[INFO] fetching crate fltk 1.5.23...
[INFO] fixing fltk-1.5.23 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate fltk 1.5.23 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate fltk 1.5.23
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate fltk 1.5.23
[INFO] tweaked toml for crates.io crate fltk 1.5.23 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate fltk 1.5.23 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate fltk 1.5.23 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 5b63d6f71ad8b089542c7835380b943f8a2ac02b0f498854879ec8bf9d619231
[INFO] running `Command { std: "docker" "start" "5b63d6f71ad8b089542c7835380b943f8a2ac02b0f498854879ec8bf9d619231", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5b63d6f71ad8b089542c7835380b943f8a2ac02b0f498854879ec8bf9d619231" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5b63d6f71ad8b089542c7835380b943f8a2ac02b0f498854879ec8bf9d619231", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5b63d6f71ad8b089542c7835380b943f8a2ac02b0f498854879ec8bf9d619231" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]     Checking ttf-parser v0.25.1
[INFO] [stderr]    Compiling cc v1.2.46
[INFO] [stderr]    Compiling minipaste v0.1.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling fltk-sys v1.5.23
[INFO] [stderr]     Checking fltk v1.5.23 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stderr] error: errors present after applying fixes to crate `fltk`
[INFO] [stderr]  --> src/app/event.rs
[INFO] [stderr]  ::: src/app/widget.rs
[INFO] [stderr]  ::: src/browser.rs
[INFO] [stderr]  ::: src/button.rs
[INFO] [stderr]  ::: src/dialog.rs
[INFO] [stderr]  ::: src/draw/routines.rs
[INFO] [stderr]  ::: src/enums.rs
[INFO] [stderr]  ::: src/frame.rs
[INFO] [stderr]  ::: src/group.rs
[INFO] [stderr]  ::: src/image.rs
[INFO] [stderr]  ::: src/input.rs
[INFO] [stderr]  ::: src/macros/browser.rs
[INFO] [stderr]  ::: src/macros/display.rs
[INFO] [stderr]  ::: src/macros/group.rs
[INFO] [stderr]  ::: src/macros/image.rs
[INFO] [stderr]  ::: src/macros/menu.rs
[INFO] [stderr]  ::: src/macros/table.rs
[INFO] [stderr]  ::: src/macros/widget.rs
[INFO] [stderr]  ::: src/macros/window.rs
[INFO] [stderr]  ::: src/menu.rs
[INFO] [stderr]  ::: src/misc.rs
[INFO] [stderr]  ::: src/output.rs
[INFO] [stderr]  ::: src/prelude.rs
[INFO] [stderr]  ::: src/surface.rs
[INFO] [stderr]  ::: src/table.rs
[INFO] [stderr]  ::: src/terminal.rs
[INFO] [stderr]  ::: src/text.rs
[INFO] [stderr]  ::: src/tree.rs
[INFO] [stderr]  ::: src/valuator.rs
[INFO] [stderr]  ::: src/widget.rs
[INFO] [stderr]  ::: src/window.rs
[INFO] [stderr]   = cause: error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/browser.rs:43:1
[INFO] [stderr]               |
[INFO] [stderr]            43 | crate::macros::widget::impl_widget_ext!(Browser, Fl_Browser);
[INFO] [stderr]               | ------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | crate::macros::widget::impl_widget_base!(Browser, Fl_Browser);
[INFO] [stderr]                | ------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/browser.rs:93:1
[INFO] [stderr]               |
[INFO] [stderr]            93 | crate::macros::widget::impl_widget_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]               | ------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:94:1
[INFO] [stderr]                |
[INFO] [stderr]             94 | crate::macros::widget::impl_widget_base!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                | -------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:105:1
[INFO] [stderr]                |
[INFO] [stderr]            105 | crate::macros::widget::impl_widget_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                | ----------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:106:1
[INFO] [stderr]                |
[INFO] [stderr]            106 | crate::macros::widget::impl_widget_base!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                | ------------------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:117:1
[INFO] [stderr]                |
[INFO] [stderr]            117 | crate::macros::widget::impl_widget_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:118:1
[INFO] [stderr]                |
[INFO] [stderr]            118 | crate::macros::widget::impl_widget_base!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                | ---------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:129:1
[INFO] [stderr]                |
[INFO] [stderr]            129 | crate::macros::widget::impl_widget_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:130:1
[INFO] [stderr]                |
[INFO] [stderr]            130 | crate::macros::widget::impl_widget_base!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                | ---------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:207:1
[INFO] [stderr]                |
[INFO] [stderr]            207 | crate::macros::widget::impl_widget_ext!(CheckBrowser, Fl_Check_Browser);
[INFO] [stderr]                | ----------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:208:1
[INFO] [stderr]                |
[INFO] [stderr]            208 | crate::macros::widget::impl_widget_base!(CheckBrowser, Fl_Check_Browser);
[INFO] [stderr]                | ------------------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/button.rs:13:1
[INFO] [stderr]               |
[INFO] [stderr]            13 | crate::macros::widget::impl_widget_ext!(Button, Fl_Button);
[INFO] [stderr]               | ---------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:14:1
[INFO] [stderr]                |
[INFO] [stderr]             14 | crate::macros::widget::impl_widget_base!(Button, Fl_Button);
[INFO] [stderr]                | ----------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/button.rs:54:1
[INFO] [stderr]               |
[INFO] [stderr]            54 | crate::macros::widget::impl_widget_ext!(RadioButton, Fl_Radio_Button);
[INFO] [stderr]               | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:55:1
[INFO] [stderr]                |
[INFO] [stderr]             55 | crate::macros::widget::impl_widget_base!(RadioButton, Fl_Radio_Button);
[INFO] [stderr]                | ---------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/button.rs:79:1
[INFO] [stderr]               |
[INFO] [stderr]            79 | crate::macros::widget::impl_widget_ext!(RadioRoundButton, Fl_Radio_Round_Button);
[INFO] [stderr]               | -------------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:80:1
[INFO] [stderr]                |
[INFO] [stderr]             80 | crate::macros::widget::impl_widget_base!(RadioRoundButton, Fl_Radio_Round_Button);
[INFO] [stderr]                | --------------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:104:1
[INFO] [stderr]                |
[INFO] [stderr]            104 | crate::macros::widget::impl_widget_ext!(RadioLightButton, Fl_Radio_Light_Button);
[INFO] [stderr]                | -------------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:105:1
[INFO] [stderr]                |
[INFO] [stderr]            105 | crate::macros::widget::impl_widget_base!(RadioLightButton, Fl_Radio_Light_Button);
[INFO] [stderr]                | --------------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:128:1
[INFO] [stderr]                |
[INFO] [stderr]            128 | crate::macros::widget::impl_widget_ext!(RoundButton, Fl_Round_Button);
[INFO] [stderr]                | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:129:1
[INFO] [stderr]                |
[INFO] [stderr]            129 | crate::macros::widget::impl_widget_base!(RoundButton, Fl_Round_Button);
[INFO] [stderr]                | ---------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:152:1
[INFO] [stderr]                |
[INFO] [stderr]            152 | crate::macros::widget::impl_widget_ext!(CheckButton, Fl_Check_Button);
[INFO] [stderr]                | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:153:1
[INFO] [stderr]                |
[INFO] [stderr]            153 | crate::macros::widget::impl_widget_base!(CheckButton, Fl_Check_Button);
[INFO] [stderr]                | ---------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:178:1
[INFO] [stderr]                |
[INFO] [stderr]            178 | crate::macros::widget::impl_widget_ext!(ToggleButton, Fl_Toggle_Button);
[INFO] [stderr]                | ----------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:179:1
[INFO] [stderr]                |
[INFO] [stderr]            179 | crate::macros::widget::impl_widget_base!(ToggleButton, Fl_Toggle_Button);
[INFO] [stderr]                | ------------------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:202:1
[INFO] [stderr]                |
[INFO] [stderr]            202 | crate::macros::widget::impl_widget_ext!(LightButton, Fl_Light_Button);
[INFO] [stderr]                | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:203:1
[INFO] [stderr]                |
[INFO] [stderr]            203 | crate::macros::widget::impl_widget_base!(LightButton, Fl_Light_Button);
[INFO] [stderr]                | ---------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:226:1
[INFO] [stderr]                |
[INFO] [stderr]            226 | crate::macros::widget::impl_widget_ext!(RepeatButton, Fl_Repeat_Button);
[INFO] [stderr]                | ----------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:227:1
[INFO] [stderr]                |
[INFO] [stderr]            227 | crate::macros::widget::impl_widget_base!(RepeatButton, Fl_Repeat_Button);
[INFO] [stderr]                | ------------------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:238:1
[INFO] [stderr]                |
[INFO] [stderr]            238 | crate::macros::widget::impl_widget_ext!(ReturnButton, Fl_Return_Button);
[INFO] [stderr]                | ----------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:239:1
[INFO] [stderr]                |
[INFO] [stderr]            239 | crate::macros::widget::impl_widget_base!(ReturnButton, Fl_Return_Button);
[INFO] [stderr]                | ------------------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:250:1
[INFO] [stderr]                |
[INFO] [stderr]            250 | crate::macros::widget::impl_widget_ext!(ShortcutButton, Fl_Shortcut_Button);
[INFO] [stderr]                | --------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:251:1
[INFO] [stderr]                |
[INFO] [stderr]            251 | crate::macros::widget::impl_widget_base!(ShortcutButton, Fl_Shortcut_Button);
[INFO] [stderr]                | ---------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/frame.rs:13:1
[INFO] [stderr]                |
[INFO] [stderr]             13 | crate::macros::widget::impl_widget_base!(Frame, Fl_Box);
[INFO] [stderr]                | ------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/frame.rs:15:1
[INFO] [stderr]               |
[INFO] [stderr]            15 | crate::macros::widget::impl_widget_ext!(Frame, Fl_Box);
[INFO] [stderr]               | ------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/group.rs:22:1
[INFO] [stderr]               |
[INFO] [stderr]            22 | crate::macros::widget::impl_widget_ext!(Group, Fl_Group);
[INFO] [stderr]               | -------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:23:1
[INFO] [stderr]                |
[INFO] [stderr]             23 | crate::macros::widget::impl_widget_base!(Group, Fl_Group);
[INFO] [stderr]                | --------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/group.rs:19:9
[INFO] [stderr]               |
[INFO] [stderr]            19 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/group.rs:25:1
[INFO] [stderr]               |
[INFO] [stderr]            25 | crate::macros::group::impl_group_ext!(Group, Fl_Group);
[INFO] [stderr]               | ------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/group.rs:69:1
[INFO] [stderr]               |
[INFO] [stderr]            69 | crate::macros::widget::impl_widget_ext!(OverlayGroup, Fl_Overlay_Group);
[INFO] [stderr]               | ----------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:70:1
[INFO] [stderr]                |
[INFO] [stderr]             70 | crate::macros::widget::impl_widget_base!(OverlayGroup, Fl_Overlay_Group);
[INFO] [stderr]                | ------------------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/group.rs:19:9
[INFO] [stderr]               |
[INFO] [stderr]            19 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/group.rs:72:1
[INFO] [stderr]               |
[INFO] [stderr]            72 | crate::macros::group::impl_group_ext!(OverlayGroup, Fl_Overlay_Group);
[INFO] [stderr]               | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/group.rs:81:1
[INFO] [stderr]               |
[INFO] [stderr]            81 | crate::macros::widget::impl_widget_ext!(Pack, Fl_Pack);
[INFO] [stderr]               | ------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:82:1
[INFO] [stderr]                |
[INFO] [stderr]             82 | crate::macros::widget::impl_widget_base!(Pack, Fl_Pack);
[INFO] [stderr]                | ------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/group.rs:19:9
[INFO] [stderr]               |
[INFO] [stderr]            19 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/group.rs:84:1
[INFO] [stderr]               |
[INFO] [stderr]            84 | crate::macros::group::impl_group_ext!(Pack, Fl_Pack);
[INFO] [stderr]               | ---------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:143:1
[INFO] [stderr]                |
[INFO] [stderr]            143 | crate::macros::widget::impl_widget_ext!(Scroll, Fl_Scroll);
[INFO] [stderr]                | ---------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:144:1
[INFO] [stderr]                |
[INFO] [stderr]            144 | crate::macros::widget::impl_widget_base!(Scroll, Fl_Scroll);
[INFO] [stderr]                | ----------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/group.rs:19:9
[INFO] [stderr]                |
[INFO] [stderr]             19 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:146:1
[INFO] [stderr]                |
[INFO] [stderr]            146 | crate::macros::group::impl_group_ext!(Scroll, Fl_Scroll);
[INFO] [stderr]                | -------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:249:1
[INFO] [stderr]                |
[INFO] [stderr]            249 | crate::macros::widget::impl_widget_ext!(Tabs, Fl_Tabs);
[INFO] [stderr]                | ------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:250:1
[INFO] [stderr]                |
[INFO] [stderr]            250 | crate::macros::widget::impl_widget_base!(Tabs, Fl_Tabs);
[INFO] [stderr]                | ------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/group.rs:19:9
[INFO] [stderr]                |
[INFO] [stderr]             19 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:252:1
[INFO] [stderr]                |
[INFO] [stderr]            252 | crate::macros::group::impl_group_ext!(Tabs, Fl_Tabs);
[INFO] [stderr]                | ---------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:366:1
[INFO] [stderr]                |
[INFO] [stderr]            366 | crate::macros::widget::impl_widget_ext!(Tile, Fl_Tile);
[INFO] [stderr]                | ------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:367:1
[INFO] [stderr]                |
[INFO] [stderr]            367 | crate::macros::widget::impl_widget_base!(Tile, Fl_Tile);
[INFO] [stderr]                | ------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/group.rs:19:9
[INFO] [stderr]                |
[INFO] [stderr]             19 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:369:1
[INFO] [stderr]                |
[INFO] [stderr]            369 | crate::macros::group::impl_group_ext!(Tile, Fl_Tile);
[INFO] [stderr]                | ---------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:432:1
[INFO] [stderr]                |
[INFO] [stderr]            432 | crate::macros::widget::impl_widget_ext!(Wizard, Fl_Wizard);
[INFO] [stderr]                | ---------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:433:1
[INFO] [stderr]                |
[INFO] [stderr]            433 | crate::macros::widget::impl_widget_base!(Wizard, Fl_Wizard);
[INFO] [stderr]                | ----------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/group.rs:19:9
[INFO] [stderr]                |
[INFO] [stderr]             19 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:435:1
[INFO] [stderr]                |
[INFO] [stderr]            435 | crate::macros::group::impl_group_ext!(Wizard, Fl_Wizard);
[INFO] [stderr]                | -------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:503:1
[INFO] [stderr]                |
[INFO] [stderr]            503 | crate::macros::widget::impl_widget_ext!(ColorChooser, Fl_Color_Chooser);
[INFO] [stderr]                | ----------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:504:1
[INFO] [stderr]                |
[INFO] [stderr]            504 | crate::macros::widget::impl_widget_base!(ColorChooser, Fl_Color_Chooser);
[INFO] [stderr]                | ------------------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/group.rs:19:9
[INFO] [stderr]                |
[INFO] [stderr]             19 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:506:1
[INFO] [stderr]                |
[INFO] [stderr]            506 | crate::macros::group::impl_group_ext!(ColorChooser, Fl_Color_Chooser);
[INFO] [stderr]                | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:598:1
[INFO] [stderr]                |
[INFO] [stderr]            598 | crate::macros::widget::impl_widget_ext!(Flex, Fl_Flex);
[INFO] [stderr]                | ------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:599:1
[INFO] [stderr]                |
[INFO] [stderr]            599 | crate::macros::widget::impl_widget_base!(Flex, Fl_Flex);
[INFO] [stderr]                | ------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/group.rs:19:9
[INFO] [stderr]                |
[INFO] [stderr]             19 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/group.rs:601:1
[INFO] [stderr]                |
[INFO] [stderr]            601 | crate::macros::group::impl_group_ext!(Flex, Fl_Flex);
[INFO] [stderr]                | ---------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]                --> src/macros/widget.rs:27:9
[INFO] [stderr]                 |
[INFO] [stderr]              27 |         { unsafe paste::paste! {
[INFO] [stderr]                 |         ^
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/group.rs:1120:1
[INFO] [stderr]                 |
[INFO] [stderr]            1120 | crate::macros::widget::impl_widget_ext!(Grid, Fl_Grid);
[INFO] [stderr]                 | ------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                 |
[INFO] [stderr]                 = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]                --> src/macros/widget.rs:803:9
[INFO] [stderr]                 |
[INFO] [stderr]             803 |         { unsafe paste::paste! {
[INFO] [stderr]                 |         ^
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/group.rs:1121:1
[INFO] [stderr]                 |
[INFO] [stderr]            1121 | crate::macros::widget::impl_widget_base!(Grid, Fl_Grid);
[INFO] [stderr]                 | ------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                 |
[INFO] [stderr]                 = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]                --> src/macros/group.rs:19:9
[INFO] [stderr]                 |
[INFO] [stderr]              19 |         { unsafe paste::paste! {
[INFO] [stderr]                 |         ^
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/group.rs:1123:1
[INFO] [stderr]                 |
[INFO] [stderr]            1123 | crate::macros::group::impl_group_ext!(Grid, Fl_Grid);
[INFO] [stderr]                 | ---------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                 |
[INFO] [stderr]                 = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/image.rs:28:9
[INFO] [stderr]               |
[INFO] [stderr]            28 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/image.rs:26:1
[INFO] [stderr]               |
[INFO] [stderr]            26 | crate::macros::image::impl_image_ext!(Image, Fl_Image);
[INFO] [stderr]               | ------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_image_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/image.rs:28:9
[INFO] [stderr]               |
[INFO] [stderr]            28 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/image.rs:48:1
[INFO] [stderr]               |
[INFO] [stderr]            48 | crate::macros::image::impl_image_ext!(SharedImage, Fl_Shared_Image);
[INFO] [stderr]               | ------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_image_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/image.rs:28:9
[INFO] [stderr]                |
[INFO] [stderr]             28 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/image.rs:114:1
[INFO] [stderr]                |
[INFO] [stderr]            114 | crate::macros::image::impl_image_ext!(JpegImage, Fl_JPEG_Image);
[INFO] [stderr]                | --------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_image_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/image.rs:28:9
[INFO] [stderr]                |
[INFO] [stderr]             28 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/image.rs:186:1
[INFO] [stderr]                |
[INFO] [stderr]            186 | crate::macros::image::impl_image_ext!(PngImage, Fl_PNG_Image);
[INFO] [stderr]                | ------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_image_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/image.rs:28:9
[INFO] [stderr]                |
[INFO] [stderr]             28 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/image.rs:258:1
[INFO] [stderr]                |
[INFO] [stderr]            258 | crate::macros::image::impl_image_ext!(SvgImage, Fl_SVG_Image);
[INFO] [stderr]                | ------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_image_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/image.rs:28:9
[INFO] [stderr]                |
[INFO] [stderr]             28 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/image.rs:337:1
[INFO] [stderr]                |
[INFO] [stderr]            337 | crate::macros::image::impl_image_ext!(BmpImage, Fl_BMP_Image);
[INFO] [stderr]                | ------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_image_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/image.rs:28:9
[INFO] [stderr]                |
[INFO] [stderr]             28 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/image.rs:409:1
[INFO] [stderr]                |
[INFO] [stderr]            409 | crate::macros::image::impl_image_ext!(GifImage, Fl_GIF_Image);
[INFO] [stderr]                | ------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_image_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/image.rs:28:9
[INFO] [stderr]                |
[INFO] [stderr]             28 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/image.rs:517:1
[INFO] [stderr]                |
[INFO] [stderr]            517 | crate::macros::image::impl_image_ext!(AnimGifImage, Fl_Anim_GIF_Image);
[INFO] [stderr]                | ---------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_image_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/image.rs:28:9
[INFO] [stderr]                |
[INFO] [stderr]             28 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/image.rs:657:1
[INFO] [stderr]                |
[INFO] [stderr]            657 | crate::macros::image::impl_image_ext!(XpmImage, Fl_XPM_Image);
[INFO] [stderr]                | ------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_image_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/image.rs:28:9
[INFO] [stderr]                |
[INFO] [stderr]             28 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/image.rs:697:1
[INFO] [stderr]                |
[INFO] [stderr]            697 | crate::macros::image::impl_image_ext!(XbmImage, Fl_XBM_Image);
[INFO] [stderr]                | ------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_image_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/image.rs:28:9
[INFO] [stderr]                |
[INFO] [stderr]             28 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/image.rs:739:1
[INFO] [stderr]                |
[INFO] [stderr]            739 | crate::macros::image::impl_image_ext!(PnmImage, Fl_PNM_Image);
[INFO] [stderr]                | ------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_image_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/image.rs:28:9
[INFO] [stderr]                |
[INFO] [stderr]             28 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/image.rs:783:1
[INFO] [stderr]                |
[INFO] [stderr]            783 | crate::macros::image::impl_image_ext!(TiledImage, Fl_Tiled_Image);
[INFO] [stderr]                | ----------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_image_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/image.rs:28:9
[INFO] [stderr]                |
[INFO] [stderr]             28 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/image.rs:805:1
[INFO] [stderr]                |
[INFO] [stderr]            805 | crate::macros::image::impl_image_ext!(Pixmap, Fl_Pixmap);
[INFO] [stderr]                | -------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_image_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/image.rs:28:9
[INFO] [stderr]                |
[INFO] [stderr]             28 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/image.rs:845:1
[INFO] [stderr]                |
[INFO] [stderr]            845 | crate::macros::image::impl_image_ext!(RgbImage, Fl_RGB_Image);
[INFO] [stderr]                | ------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_image_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]                --> src/macros/image.rs:28:9
[INFO] [stderr]                 |
[INFO] [stderr]              28 |         { unsafe paste::paste! {
[INFO] [stderr]                 |         ^
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/image.rs:1332:1
[INFO] [stderr]                 |
[INFO] [stderr]            1332 | crate::macros::image::impl_image_ext!(IcoImage, Fl_ICO_Image);
[INFO] [stderr]                 | ------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                 |
[INFO] [stderr]                 = note: the usage of `impl_image_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/input.rs:14:1
[INFO] [stderr]               |
[INFO] [stderr]            14 | crate::macros::widget::impl_widget_ext!(Input, Fl_Input);
[INFO] [stderr]               | -------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/input.rs:15:1
[INFO] [stderr]                |
[INFO] [stderr]             15 | crate::macros::widget::impl_widget_base!(Input, Fl_Input);
[INFO] [stderr]                | --------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/input.rs:50:1
[INFO] [stderr]               |
[INFO] [stderr]            50 | crate::macros::widget::impl_widget_ext!(IntInput, Fl_Int_Input);
[INFO] [stderr]               | --------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/input.rs:51:1
[INFO] [stderr]                |
[INFO] [stderr]             51 | crate::macros::widget::impl_widget_base!(IntInput, Fl_Int_Input);
[INFO] [stderr]                | ---------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/input.rs:62:1
[INFO] [stderr]               |
[INFO] [stderr]            62 | crate::macros::widget::impl_widget_ext!(FloatInput, Fl_Float_Input);
[INFO] [stderr]               | ------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/input.rs:63:1
[INFO] [stderr]                |
[INFO] [stderr]             63 | crate::macros::widget::impl_widget_base!(FloatInput, Fl_Float_Input);
[INFO] [stderr]                | -------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/input.rs:74:1
[INFO] [stderr]               |
[INFO] [stderr]            74 | crate::macros::widget::impl_widget_ext!(MultilineInput, Fl_Multiline_Input);
[INFO] [stderr]               | --------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/input.rs:75:1
[INFO] [stderr]                |
[INFO] [stderr]             75 | crate::macros::widget::impl_widget_base!(MultilineInput, Fl_Multiline_Input);
[INFO] [stderr]                | ---------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/input.rs:86:1
[INFO] [stderr]               |
[INFO] [stderr]            86 | crate::macros::widget::impl_widget_ext!(FileInput, Fl_File_Input);
[INFO] [stderr]               | ----------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/input.rs:87:1
[INFO] [stderr]                |
[INFO] [stderr]             87 | crate::macros::widget::impl_widget_base!(FileInput, Fl_File_Input);
[INFO] [stderr]                | ------------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/input.rs:110:1
[INFO] [stderr]                |
[INFO] [stderr]            110 | crate::macros::widget::impl_widget_ext!(SecretInput, Fl_Secret_Input);
[INFO] [stderr]                | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/input.rs:111:1
[INFO] [stderr]                |
[INFO] [stderr]            111 | crate::macros::widget::impl_widget_base!(SecretInput, Fl_Secret_Input);
[INFO] [stderr]                | ---------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/menu.rs:45:1
[INFO] [stderr]               |
[INFO] [stderr]            45 | crate::macros::widget::impl_widget_ext!(MenuBar, Fl_Menu_Bar);
[INFO] [stderr]               | ------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/menu.rs:46:1
[INFO] [stderr]                |
[INFO] [stderr]             46 | crate::macros::widget::impl_widget_base!(MenuBar, Fl_Menu_Bar);
[INFO] [stderr]                | -------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/menu.rs:19:9
[INFO] [stderr]               |
[INFO] [stderr]            19 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/menu.rs:48:1
[INFO] [stderr]               |
[INFO] [stderr]            48 | crate::macros::menu::impl_menu_ext!(MenuBar, Fl_Menu_Bar);
[INFO] [stderr]               | --------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_menu_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/menu.rs:57:1
[INFO] [stderr]               |
[INFO] [stderr]            57 | crate::macros::widget::impl_widget_ext!(MenuButton, Fl_Menu_Button);
[INFO] [stderr]               | ------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/menu.rs:58:1
[INFO] [stderr]                |
[INFO] [stderr]             58 | crate::macros::widget::impl_widget_base!(MenuButton, Fl_Menu_Button);
[INFO] [stderr]                | -------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/menu.rs:19:9
[INFO] [stderr]               |
[INFO] [stderr]            19 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/menu.rs:60:1
[INFO] [stderr]               |
[INFO] [stderr]            60 | crate::macros::menu::impl_menu_ext!(MenuButton, Fl_Menu_Button);
[INFO] [stderr]               | --------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_menu_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/menu.rs:139:1
[INFO] [stderr]                |
[INFO] [stderr]            139 | crate::macros::widget::impl_widget_ext!(Choice, Fl_Choice);
[INFO] [stderr]                | ---------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/menu.rs:140:1
[INFO] [stderr]                |
[INFO] [stderr]            140 | crate::macros::widget::impl_widget_base!(Choice, Fl_Choice);
[INFO] [stderr]                | ----------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/menu.rs:19:9
[INFO] [stderr]                |
[INFO] [stderr]             19 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/menu.rs:142:1
[INFO] [stderr]                |
[INFO] [stderr]            142 | crate::macros::menu::impl_menu_ext!(Choice, Fl_Choice);
[INFO] [stderr]                | ------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_menu_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/menu.rs:165:1
[INFO] [stderr]                |
[INFO] [stderr]            165 | crate::macros::widget::impl_widget_ext!(SysMenuBar, Fl_Sys_Menu_Bar);
[INFO] [stderr]                | -------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/menu.rs:166:1
[INFO] [stderr]                |
[INFO] [stderr]            166 | crate::macros::widget::impl_widget_base!(SysMenuBar, Fl_Sys_Menu_Bar);
[INFO] [stderr]                | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/menu.rs:19:9
[INFO] [stderr]                |
[INFO] [stderr]             19 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/menu.rs:168:1
[INFO] [stderr]                |
[INFO] [stderr]            168 | crate::macros::menu::impl_menu_ext!(SysMenuBar, Fl_Sys_Menu_Bar);
[INFO] [stderr]                | ---------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_menu_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/misc.rs:54:1
[INFO] [stderr]               |
[INFO] [stderr]            54 | crate::macros::widget::impl_widget_ext!(Spinner, Fl_Spinner);
[INFO] [stderr]               | ------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/misc.rs:55:1
[INFO] [stderr]                |
[INFO] [stderr]             55 | crate::macros::widget::impl_widget_base!(Spinner, Fl_Spinner);
[INFO] [stderr]                | ------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/misc.rs:166:1
[INFO] [stderr]                |
[INFO] [stderr]            166 | crate::macros::widget::impl_widget_ext!(Clock, Fl_Clock);
[INFO] [stderr]                | -------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/misc.rs:167:1
[INFO] [stderr]                |
[INFO] [stderr]            167 | crate::macros::widget::impl_widget_base!(Clock, Fl_Clock);
[INFO] [stderr]                | --------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/misc.rs:177:1
[INFO] [stderr]                |
[INFO] [stderr]            177 | crate::macros::widget::impl_widget_ext!(Chart, Fl_Chart);
[INFO] [stderr]                | -------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/misc.rs:178:1
[INFO] [stderr]                |
[INFO] [stderr]            178 | crate::macros::widget::impl_widget_base!(Chart, Fl_Chart);
[INFO] [stderr]                | --------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/misc.rs:273:1
[INFO] [stderr]                |
[INFO] [stderr]            273 | crate::macros::widget::impl_widget_ext!(Progress, Fl_Progress);
[INFO] [stderr]                | -------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/misc.rs:274:1
[INFO] [stderr]                |
[INFO] [stderr]            274 | crate::macros::widget::impl_widget_base!(Progress, Fl_Progress);
[INFO] [stderr]                | --------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/misc.rs:485:1
[INFO] [stderr]                |
[INFO] [stderr]            485 | crate::macros::widget::impl_widget_ext!(InputChoice, Fl_Input_Choice);
[INFO] [stderr]                | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/misc.rs:486:1
[INFO] [stderr]                |
[INFO] [stderr]            486 | crate::macros::widget::impl_widget_base!(InputChoice, Fl_Input_Choice);
[INFO] [stderr]                | ---------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/misc.rs:603:1
[INFO] [stderr]                |
[INFO] [stderr]            603 | crate::macros::widget::impl_widget_ext!(HelpView, Fl_Help_View);
[INFO] [stderr]                | --------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/misc.rs:604:1
[INFO] [stderr]                |
[INFO] [stderr]            604 | crate::macros::widget::impl_widget_base!(HelpView, Fl_Help_View);
[INFO] [stderr]                | ---------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/output.rs:25:1
[INFO] [stderr]               |
[INFO] [stderr]            25 | crate::macros::widget::impl_widget_ext!(Output, Fl_Output);
[INFO] [stderr]               | ---------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/output.rs:26:1
[INFO] [stderr]                |
[INFO] [stderr]             26 | crate::macros::widget::impl_widget_base!(Output, Fl_Output);
[INFO] [stderr]                | ----------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/output.rs:37:1
[INFO] [stderr]               |
[INFO] [stderr]            37 | crate::macros::widget::impl_widget_ext!(MultilineOutput, Fl_Multiline_Output);
[INFO] [stderr]               | ----------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/output.rs:38:1
[INFO] [stderr]                |
[INFO] [stderr]             38 | crate::macros::widget::impl_widget_base!(MultilineOutput, Fl_Multiline_Output);
[INFO] [stderr]                | ------------------------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/table.rs:14:1
[INFO] [stderr]               |
[INFO] [stderr]            14 | crate::macros::widget::impl_widget_ext!(Table, Fl_Table);
[INFO] [stderr]               | -------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/table.rs:15:1
[INFO] [stderr]                |
[INFO] [stderr]             15 | crate::macros::widget::impl_widget_base!(Table, Fl_Table);
[INFO] [stderr]                | --------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/group.rs:19:9
[INFO] [stderr]               |
[INFO] [stderr]            19 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/table.rs:17:1
[INFO] [stderr]               |
[INFO] [stderr]            17 | crate::macros::group::impl_group_ext!(Table, Fl_Table);
[INFO] [stderr]               | ------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/table.rs:6:9
[INFO] [stderr]               |
[INFO] [stderr]             6 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/table.rs:18:1
[INFO] [stderr]               |
[INFO] [stderr]            18 | crate::macros::table::impl_table_ext!(Table, Fl_Table);
[INFO] [stderr]               | ------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_table_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/table.rs:65:1
[INFO] [stderr]               |
[INFO] [stderr]            65 | crate::macros::widget::impl_widget_ext!(TableRow, Fl_Table_Row);
[INFO] [stderr]               | --------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/table.rs:66:1
[INFO] [stderr]                |
[INFO] [stderr]             66 | crate::macros::widget::impl_widget_base!(TableRow, Fl_Table_Row);
[INFO] [stderr]                | ---------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/group.rs:19:9
[INFO] [stderr]               |
[INFO] [stderr]            19 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/table.rs:68:1
[INFO] [stderr]               |
[INFO] [stderr]            68 | crate::macros::group::impl_group_ext!(TableRow, Fl_Table_Row);
[INFO] [stderr]               | ------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/table.rs:6:9
[INFO] [stderr]               |
[INFO] [stderr]             6 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/table.rs:69:1
[INFO] [stderr]               |
[INFO] [stderr]            69 | crate::macros::table::impl_table_ext!(TableRow, Fl_Table_Row);
[INFO] [stderr]               | ------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_table_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/terminal.rs:20:1
[INFO] [stderr]               |
[INFO] [stderr]            20 | crate::macros::widget::impl_widget_ext!(Terminal, Fl_Terminal);
[INFO] [stderr]               | -------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/terminal.rs:21:1
[INFO] [stderr]                |
[INFO] [stderr]             21 | crate::macros::widget::impl_widget_base!(Terminal, Fl_Terminal);
[INFO] [stderr]                | --------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/group.rs:19:9
[INFO] [stderr]               |
[INFO] [stderr]            19 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/terminal.rs:23:1
[INFO] [stderr]               |
[INFO] [stderr]            23 | crate::macros::group::impl_group_ext!(Terminal, Fl_Terminal);
[INFO] [stderr]               | ------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/text.rs:941:1
[INFO] [stderr]                |
[INFO] [stderr]            941 | crate::macros::widget::impl_widget_ext!(TextDisplay, Fl_Text_Display);
[INFO] [stderr]                | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/text.rs:942:1
[INFO] [stderr]                |
[INFO] [stderr]            942 | crate::macros::widget::impl_widget_base!(TextDisplay, Fl_Text_Display);
[INFO] [stderr]                | ---------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/text.rs:953:1
[INFO] [stderr]                |
[INFO] [stderr]            953 | crate::macros::widget::impl_widget_ext!(TextEditor, Fl_Text_Editor);
[INFO] [stderr]                | ------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/text.rs:954:1
[INFO] [stderr]                |
[INFO] [stderr]            954 | crate::macros::widget::impl_widget_base!(TextEditor, Fl_Text_Editor);
[INFO] [stderr]                | -------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/text.rs:978:1
[INFO] [stderr]                |
[INFO] [stderr]            978 | crate::macros::widget::impl_widget_ext!(SimpleTerminal, Fl_Simple_Terminal);
[INFO] [stderr]                | --------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/text.rs:979:1
[INFO] [stderr]                |
[INFO] [stderr]            979 | crate::macros::widget::impl_widget_base!(SimpleTerminal, Fl_Simple_Terminal);
[INFO] [stderr]                | ---------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/tree.rs:112:1
[INFO] [stderr]                |
[INFO] [stderr]            112 | crate::macros::widget::impl_widget_ext!(Tree, Fl_Tree);
[INFO] [stderr]                | ------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/tree.rs:113:1
[INFO] [stderr]                |
[INFO] [stderr]            113 | crate::macros::widget::impl_widget_base!(Tree, Fl_Tree);
[INFO] [stderr]                | ------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/valuator.rs:17:1
[INFO] [stderr]               |
[INFO] [stderr]            17 | crate::macros::widget::impl_widget_ext!(Slider, Fl_Slider);
[INFO] [stderr]               | ---------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:18:1
[INFO] [stderr]                |
[INFO] [stderr]             18 | crate::macros::widget::impl_widget_base!(Slider, Fl_Slider);
[INFO] [stderr]                | ----------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/valuator.rs:52:1
[INFO] [stderr]               |
[INFO] [stderr]            52 | crate::macros::widget::impl_widget_ext!(NiceSlider, Fl_Nice_Slider);
[INFO] [stderr]               | ------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:53:1
[INFO] [stderr]                |
[INFO] [stderr]             53 | crate::macros::widget::impl_widget_base!(NiceSlider, Fl_Nice_Slider);
[INFO] [stderr]                | -------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:107:1
[INFO] [stderr]                |
[INFO] [stderr]            107 | crate::macros::widget::impl_widget_ext!(Dial, Fl_Dial);
[INFO] [stderr]                | ------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:108:1
[INFO] [stderr]                |
[INFO] [stderr]            108 | crate::macros::widget::impl_widget_base!(Dial, Fl_Dial);
[INFO] [stderr]                | ------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:142:1
[INFO] [stderr]                |
[INFO] [stderr]            142 | crate::macros::widget::impl_widget_ext!(LineDial, Fl_Line_Dial);
[INFO] [stderr]                | --------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:143:1
[INFO] [stderr]                |
[INFO] [stderr]            143 | crate::macros::widget::impl_widget_base!(LineDial, Fl_Line_Dial);
[INFO] [stderr]                | ---------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:191:1
[INFO] [stderr]                |
[INFO] [stderr]            191 | crate::macros::widget::impl_widget_ext!(Counter, Fl_Counter);
[INFO] [stderr]                | ------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:192:1
[INFO] [stderr]                |
[INFO] [stderr]            192 | crate::macros::widget::impl_widget_base!(Counter, Fl_Counter);
[INFO] [stderr]                | ------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:215:1
[INFO] [stderr]                |
[INFO] [stderr]            215 | crate::macros::widget::impl_widget_ext!(SimpleCounter, Fl_Simple_Counter);
[INFO] [stderr]                | ------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:216:1
[INFO] [stderr]                |
[INFO] [stderr]            216 | crate::macros::widget::impl_widget_base!(SimpleCounter, Fl_Simple_Counter);
[INFO] [stderr]                | -------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:227:1
[INFO] [stderr]                |
[INFO] [stderr]            227 | crate::macros::widget::impl_widget_ext!(Scrollbar, Fl_Scrollbar);
[INFO] [stderr]                | ---------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:228:1
[INFO] [stderr]                |
[INFO] [stderr]            228 | crate::macros::widget::impl_widget_base!(Scrollbar, Fl_Scrollbar);
[INFO] [stderr]                | ----------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:319:1
[INFO] [stderr]                |
[INFO] [stderr]            319 | crate::macros::widget::impl_widget_ext!(Roller, Fl_Roller);
[INFO] [stderr]                | ---------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:320:1
[INFO] [stderr]                |
[INFO] [stderr]            320 | crate::macros::widget::impl_widget_base!(Roller, Fl_Roller);
[INFO] [stderr]                | ----------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:331:1
[INFO] [stderr]                |
[INFO] [stderr]            331 | crate::macros::widget::impl_widget_ext!(ValueSlider, Fl_Value_Slider);
[INFO] [stderr]                | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:332:1
[INFO] [stderr]                |
[INFO] [stderr]            332 | crate::macros::widget::impl_widget_base!(ValueSlider, Fl_Value_Slider);
[INFO] [stderr]                | ---------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:423:1
[INFO] [stderr]                |
[INFO] [stderr]            423 | crate::macros::widget::impl_widget_ext!(Adjuster, Fl_Adjuster);
[INFO] [stderr]                | -------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:424:1
[INFO] [stderr]                |
[INFO] [stderr]            424 | crate::macros::widget::impl_widget_base!(Adjuster, Fl_Adjuster);
[INFO] [stderr]                | --------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:436:1
[INFO] [stderr]                |
[INFO] [stderr]            436 | crate::macros::widget::impl_widget_ext!(ValueInput, Fl_Value_Input);
[INFO] [stderr]                | ------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:437:1
[INFO] [stderr]                |
[INFO] [stderr]            437 | crate::macros::widget::impl_widget_base!(ValueInput, Fl_Value_Input);
[INFO] [stderr]                | -------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:491:1
[INFO] [stderr]                |
[INFO] [stderr]            491 | crate::macros::widget::impl_widget_ext!(ValueOutput, Fl_Value_Output);
[INFO] [stderr]                | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:492:1
[INFO] [stderr]                |
[INFO] [stderr]            492 | crate::macros::widget::impl_widget_base!(ValueOutput, Fl_Value_Output);
[INFO] [stderr]                | ---------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:535:1
[INFO] [stderr]                |
[INFO] [stderr]            535 | crate::macros::widget::impl_widget_ext!(FillSlider, Fl_Fill_Slider);
[INFO] [stderr]                | ------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:536:1
[INFO] [stderr]                |
[INFO] [stderr]            536 | crate::macros::widget::impl_widget_base!(FillSlider, Fl_Fill_Slider);
[INFO] [stderr]                | -------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:547:1
[INFO] [stderr]                |
[INFO] [stderr]            547 | crate::macros::widget::impl_widget_ext!(FillDial, Fl_Fill_Dial);
[INFO] [stderr]                | --------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:548:1
[INFO] [stderr]                |
[INFO] [stderr]            548 | crate::macros::widget::impl_widget_base!(FillDial, Fl_Fill_Dial);
[INFO] [stderr]                | ---------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:582:1
[INFO] [stderr]                |
[INFO] [stderr]            582 | crate::macros::widget::impl_widget_ext!(HorSlider, Fl_Hor_Slider);
[INFO] [stderr]                | ----------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:583:1
[INFO] [stderr]                |
[INFO] [stderr]            583 | crate::macros::widget::impl_widget_base!(HorSlider, Fl_Hor_Slider);
[INFO] [stderr]                | ------------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:617:1
[INFO] [stderr]                |
[INFO] [stderr]            617 | crate::macros::widget::impl_widget_ext!(HorFillSlider, Fl_Hor_Fill_Slider);
[INFO] [stderr]                | -------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:618:1
[INFO] [stderr]                |
[INFO] [stderr]            618 | crate::macros::widget::impl_widget_base!(HorFillSlider, Fl_Hor_Fill_Slider);
[INFO] [stderr]                | --------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:652:1
[INFO] [stderr]                |
[INFO] [stderr]            652 | crate::macros::widget::impl_widget_ext!(HorNiceSlider, Fl_Hor_Nice_Slider);
[INFO] [stderr]                | -------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:653:1
[INFO] [stderr]                |
[INFO] [stderr]            653 | crate::macros::widget::impl_widget_base!(HorNiceSlider, Fl_Hor_Nice_Slider);
[INFO] [stderr]                | --------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:687:1
[INFO] [stderr]                |
[INFO] [stderr]            687 | crate::macros::widget::impl_widget_ext!(HorValueSlider, Fl_Hor_Value_Slider);
[INFO] [stderr]                | ---------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:688:1
[INFO] [stderr]                |
[INFO] [stderr]            688 | crate::macros::widget::impl_widget_base!(HorValueSlider, Fl_Hor_Value_Slider);
[INFO] [stderr]                | ----------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]              --> src/macros/widget.rs:27:9
[INFO] [stderr]               |
[INFO] [stderr]            27 |         { unsafe paste::paste! {
[INFO] [stderr]               |         ^
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/widget.rs:36:1
[INFO] [stderr]               |
[INFO] [stderr]            36 | crate::macros::widget::impl_widget_ext!(Widget, Fl_Widget);
[INFO] [stderr]               | ---------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]               |
[INFO] [stderr]               = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/widget.rs:37:1
[INFO] [stderr]                |
[INFO] [stderr]             37 | crate::macros::widget::impl_widget_base!(Widget, Fl_Widget);
[INFO] [stderr]                | ----------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:349:1
[INFO] [stderr]                |
[INFO] [stderr]            349 | crate::macros::widget::impl_widget_ext!(SingleWindow, Fl_Single_Window);
[INFO] [stderr]                | ----------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:350:1
[INFO] [stderr]                |
[INFO] [stderr]            350 | crate::macros::widget::impl_widget_base!(SingleWindow, Fl_Single_Window);
[INFO] [stderr]                | ------------------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/group.rs:19:9
[INFO] [stderr]                |
[INFO] [stderr]             19 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:351:1
[INFO] [stderr]                |
[INFO] [stderr]            351 | crate::macros::group::impl_group_ext!(SingleWindow, Fl_Single_Window);
[INFO] [stderr]                | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/window.rs:226:9
[INFO] [stderr]                |
[INFO] [stderr]            226 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:352:1
[INFO] [stderr]                |
[INFO] [stderr]            352 | crate::macros::window::impl_window_ext!(SingleWindow, Fl_Single_Window);
[INFO] [stderr]                | ----------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_window_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:373:1
[INFO] [stderr]                |
[INFO] [stderr]            373 | crate::macros::widget::impl_widget_ext!(DoubleWindow, Fl_Double_Window);
[INFO] [stderr]                | ----------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:374:1
[INFO] [stderr]                |
[INFO] [stderr]            374 | crate::macros::widget::impl_widget_base!(DoubleWindow, Fl_Double_Window);
[INFO] [stderr]                | ------------------------------------------------------------------------ caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/group.rs:19:9
[INFO] [stderr]                |
[INFO] [stderr]             19 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:375:1
[INFO] [stderr]                |
[INFO] [stderr]            375 | crate::macros::group::impl_group_ext!(DoubleWindow, Fl_Double_Window);
[INFO] [stderr]                | --------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/window.rs:226:9
[INFO] [stderr]                |
[INFO] [stderr]            226 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:376:1
[INFO] [stderr]                |
[INFO] [stderr]            376 | crate::macros::window::impl_window_ext!(DoubleWindow, Fl_Double_Window);
[INFO] [stderr]                | ----------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_window_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:478:1
[INFO] [stderr]                |
[INFO] [stderr]            478 | crate::macros::widget::impl_widget_ext!(MenuWindow, Fl_Menu_Window);
[INFO] [stderr]                | ------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:479:1
[INFO] [stderr]                |
[INFO] [stderr]            479 | crate::macros::widget::impl_widget_base!(MenuWindow, Fl_Menu_Window);
[INFO] [stderr]                | -------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/group.rs:19:9
[INFO] [stderr]                |
[INFO] [stderr]             19 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:480:1
[INFO] [stderr]                |
[INFO] [stderr]            480 | crate::macros::group::impl_group_ext!(MenuWindow, Fl_Menu_Window);
[INFO] [stderr]                | ----------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/window.rs:226:9
[INFO] [stderr]                |
[INFO] [stderr]            226 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:481:1
[INFO] [stderr]                |
[INFO] [stderr]            481 | crate::macros::window::impl_window_ext!(MenuWindow, Fl_Menu_Window);
[INFO] [stderr]                | ------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_window_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:27:9
[INFO] [stderr]                |
[INFO] [stderr]             27 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:499:1
[INFO] [stderr]                |
[INFO] [stderr]            499 | crate::macros::widget::impl_widget_ext!(OverlayWindow, Fl_Overlay_Window);
[INFO] [stderr]                | ------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/widget.rs:803:9
[INFO] [stderr]                |
[INFO] [stderr]            803 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:500:1
[INFO] [stderr]                |
[INFO] [stderr]            500 | crate::macros::widget::impl_widget_base!(OverlayWindow, Fl_Overlay_Window);
[INFO] [stderr]                | -------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_widget_base!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/group.rs:19:9
[INFO] [stderr]                |
[INFO] [stderr]             19 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:501:1
[INFO] [stderr]                |
[INFO] [stderr]            501 | crate::macros::group::impl_group_ext!(OverlayWindow, Fl_Overlay_Window);
[INFO] [stderr]                | ----------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_group_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: macro expansion ignores `{` and any tokens following
[INFO] [stderr]               --> src/macros/window.rs:226:9
[INFO] [stderr]                |
[INFO] [stderr]            226 |         { unsafe paste::paste! {
[INFO] [stderr]                |         ^
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:502:1
[INFO] [stderr]                |
[INFO] [stderr]            502 | crate::macros::window::impl_window_ext!(OverlayWindow, Fl_Overlay_Window);
[INFO] [stderr]                | ------------------------------------------------------------------------- caused by the macro expansion here
[INFO] [stderr]                |
[INFO] [stderr]                = note: the usage of `impl_window_ext!` is likely invalid in item context
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/browser.rs:46:43
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 |                                           ^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/browser.rs:96:43
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 |                                           ^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/browser.rs:108:43
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 |                                           ^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/browser.rs:120:43
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 |                                           ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/browser.rs:132:43
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 |                                           ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Button: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/button.rs:16:41
[INFO] [stderr]                |
[INFO] [stderr]             16 | crate::macros::button::impl_button_ext!(Button, Fl_Button);
[INFO] [stderr]                |                                         ^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Button`
[INFO] [stderr]               --> src/button.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub struct Button {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ButtonExt`
[INFO] [stderr]               --> src/prelude.rs:549:29
[INFO] [stderr]                |
[INFO] [stderr]            549 | pub unsafe trait ButtonExt: WidgetExt {
[INFO] [stderr]                |                             ^^^^^^^^^ required by this bound in `ButtonExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `RadioButton: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/button.rs:57:41
[INFO] [stderr]                |
[INFO] [stderr]             57 | crate::macros::button::impl_button_ext!(RadioButton, Fl_Radio_Button);
[INFO] [stderr]                |                                         ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `RadioButton`
[INFO] [stderr]               --> src/button.rs:49:1
[INFO] [stderr]                |
[INFO] [stderr]             49 | pub struct RadioButton {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ButtonExt`
[INFO] [stderr]               --> src/prelude.rs:549:29
[INFO] [stderr]                |
[INFO] [stderr]            549 | pub unsafe trait ButtonExt: WidgetExt {
[INFO] [stderr]                |                             ^^^^^^^^^ required by this bound in `ButtonExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `RadioRoundButton: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/button.rs:82:41
[INFO] [stderr]                |
[INFO] [stderr]             82 | crate::macros::button::impl_button_ext!(RadioRoundButton, Fl_Radio_Round_Button);
[INFO] [stderr]                |                                         ^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `RadioRoundButton`
[INFO] [stderr]               --> src/button.rs:74:1
[INFO] [stderr]                |
[INFO] [stderr]             74 | pub struct RadioRoundButton {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ButtonExt`
[INFO] [stderr]               --> src/prelude.rs:549:29
[INFO] [stderr]                |
[INFO] [stderr]            549 | pub unsafe trait ButtonExt: WidgetExt {
[INFO] [stderr]                |                             ^^^^^^^^^ required by this bound in `ButtonExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `RadioLightButton: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/button.rs:107:41
[INFO] [stderr]                |
[INFO] [stderr]            107 | crate::macros::button::impl_button_ext!(RadioLightButton, Fl_Radio_Light_Button);
[INFO] [stderr]                |                                         ^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `RadioLightButton`
[INFO] [stderr]               --> src/button.rs:99:1
[INFO] [stderr]                |
[INFO] [stderr]             99 | pub struct RadioLightButton {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ButtonExt`
[INFO] [stderr]               --> src/prelude.rs:549:29
[INFO] [stderr]                |
[INFO] [stderr]            549 | pub unsafe trait ButtonExt: WidgetExt {
[INFO] [stderr]                |                             ^^^^^^^^^ required by this bound in `ButtonExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `RoundButton: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/button.rs:131:41
[INFO] [stderr]                |
[INFO] [stderr]            131 | crate::macros::button::impl_button_ext!(RoundButton, Fl_Round_Button);
[INFO] [stderr]                |                                         ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `RoundButton`
[INFO] [stderr]               --> src/button.rs:123:1
[INFO] [stderr]                |
[INFO] [stderr]            123 | pub struct RoundButton {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ButtonExt`
[INFO] [stderr]               --> src/prelude.rs:549:29
[INFO] [stderr]                |
[INFO] [stderr]            549 | pub unsafe trait ButtonExt: WidgetExt {
[INFO] [stderr]                |                             ^^^^^^^^^ required by this bound in `ButtonExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `CheckButton: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/button.rs:155:41
[INFO] [stderr]                |
[INFO] [stderr]            155 | crate::macros::button::impl_button_ext!(CheckButton, Fl_Check_Button);
[INFO] [stderr]                |                                         ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `CheckButton`
[INFO] [stderr]               --> src/button.rs:147:1
[INFO] [stderr]                |
[INFO] [stderr]            147 | pub struct CheckButton {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ButtonExt`
[INFO] [stderr]               --> src/prelude.rs:549:29
[INFO] [stderr]                |
[INFO] [stderr]            549 | pub unsafe trait ButtonExt: WidgetExt {
[INFO] [stderr]                |                             ^^^^^^^^^ required by this bound in `ButtonExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `ToggleButton: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/button.rs:181:41
[INFO] [stderr]                |
[INFO] [stderr]            181 | crate::macros::button::impl_button_ext!(ToggleButton, Fl_Toggle_Button);
[INFO] [stderr]                |                                         ^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `ToggleButton`
[INFO] [stderr]               --> src/button.rs:173:1
[INFO] [stderr]                |
[INFO] [stderr]            173 | pub struct ToggleButton {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ButtonExt`
[INFO] [stderr]               --> src/prelude.rs:549:29
[INFO] [stderr]                |
[INFO] [stderr]            549 | pub unsafe trait ButtonExt: WidgetExt {
[INFO] [stderr]                |                             ^^^^^^^^^ required by this bound in `ButtonExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LightButton: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/button.rs:205:41
[INFO] [stderr]                |
[INFO] [stderr]            205 | crate::macros::button::impl_button_ext!(LightButton, Fl_Light_Button);
[INFO] [stderr]                |                                         ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `LightButton`
[INFO] [stderr]               --> src/button.rs:197:1
[INFO] [stderr]                |
[INFO] [stderr]            197 | pub struct LightButton {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ButtonExt`
[INFO] [stderr]               --> src/prelude.rs:549:29
[INFO] [stderr]                |
[INFO] [stderr]            549 | pub unsafe trait ButtonExt: WidgetExt {
[INFO] [stderr]                |                             ^^^^^^^^^ required by this bound in `ButtonExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `RepeatButton: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/button.rs:229:41
[INFO] [stderr]                |
[INFO] [stderr]            229 | crate::macros::button::impl_button_ext!(RepeatButton, Fl_Repeat_Button);
[INFO] [stderr]                |                                         ^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `RepeatButton`
[INFO] [stderr]               --> src/button.rs:221:1
[INFO] [stderr]                |
[INFO] [stderr]            221 | pub struct RepeatButton {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ButtonExt`
[INFO] [stderr]               --> src/prelude.rs:549:29
[INFO] [stderr]                |
[INFO] [stderr]            549 | pub unsafe trait ButtonExt: WidgetExt {
[INFO] [stderr]                |                             ^^^^^^^^^ required by this bound in `ButtonExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `ReturnButton: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/button.rs:241:41
[INFO] [stderr]                |
[INFO] [stderr]            241 | crate::macros::button::impl_button_ext!(ReturnButton, Fl_Return_Button);
[INFO] [stderr]                |                                         ^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `ReturnButton`
[INFO] [stderr]               --> src/button.rs:233:1
[INFO] [stderr]                |
[INFO] [stderr]            233 | pub struct ReturnButton {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ButtonExt`
[INFO] [stderr]               --> src/prelude.rs:549:29
[INFO] [stderr]                |
[INFO] [stderr]            549 | pub unsafe trait ButtonExt: WidgetExt {
[INFO] [stderr]                |                             ^^^^^^^^^ required by this bound in `ButtonExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `ShortcutButton: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/button.rs:253:41
[INFO] [stderr]                |
[INFO] [stderr]            253 | crate::macros::button::impl_button_ext!(ShortcutButton, Fl_Shortcut_Button);
[INFO] [stderr]                |                                         ^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `ShortcutButton`
[INFO] [stderr]               --> src/button.rs:245:1
[INFO] [stderr]                |
[INFO] [stderr]            245 | pub struct ShortcutButton {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ButtonExt`
[INFO] [stderr]               --> src/prelude.rs:549:29
[INFO] [stderr]                |
[INFO] [stderr]            549 | pub unsafe trait ButtonExt: WidgetExt {
[INFO] [stderr]                |                             ^^^^^^^^^ required by this bound in `ButtonExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Input: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/input.rs:17:39
[INFO] [stderr]                |
[INFO] [stderr]             17 | crate::macros::input::impl_input_ext!(Input, Fl_Input);
[INFO] [stderr]                |                                       ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Input`
[INFO] [stderr]               --> src/input.rs:9:1
[INFO] [stderr]                |
[INFO] [stderr]              9 | pub struct Input {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::InputExt`
[INFO] [stderr]               --> src/prelude.rs:824:28
[INFO] [stderr]                |
[INFO] [stderr]            824 | pub unsafe trait InputExt: WidgetExt {
[INFO] [stderr]                |                            ^^^^^^^^^ required by this bound in `InputExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `IntInput: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/input.rs:53:39
[INFO] [stderr]                |
[INFO] [stderr]             53 | crate::macros::input::impl_input_ext!(IntInput, Fl_Int_Input);
[INFO] [stderr]                |                                       ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `IntInput`
[INFO] [stderr]               --> src/input.rs:45:1
[INFO] [stderr]                |
[INFO] [stderr]             45 | pub struct IntInput {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::InputExt`
[INFO] [stderr]               --> src/prelude.rs:824:28
[INFO] [stderr]                |
[INFO] [stderr]            824 | pub unsafe trait InputExt: WidgetExt {
[INFO] [stderr]                |                            ^^^^^^^^^ required by this bound in `InputExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FloatInput: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/input.rs:65:39
[INFO] [stderr]                |
[INFO] [stderr]             65 | crate::macros::input::impl_input_ext!(FloatInput, Fl_Float_Input);
[INFO] [stderr]                |                                       ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FloatInput`
[INFO] [stderr]               --> src/input.rs:57:1
[INFO] [stderr]                |
[INFO] [stderr]             57 | pub struct FloatInput {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::InputExt`
[INFO] [stderr]               --> src/prelude.rs:824:28
[INFO] [stderr]                |
[INFO] [stderr]            824 | pub unsafe trait InputExt: WidgetExt {
[INFO] [stderr]                |                            ^^^^^^^^^ required by this bound in `InputExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultilineInput: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/input.rs:77:39
[INFO] [stderr]                |
[INFO] [stderr]             77 | crate::macros::input::impl_input_ext!(MultilineInput, Fl_Multiline_Input);
[INFO] [stderr]                |                                       ^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultilineInput`
[INFO] [stderr]               --> src/input.rs:69:1
[INFO] [stderr]                |
[INFO] [stderr]             69 | pub struct MultilineInput {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::InputExt`
[INFO] [stderr]               --> src/prelude.rs:824:28
[INFO] [stderr]                |
[INFO] [stderr]            824 | pub unsafe trait InputExt: WidgetExt {
[INFO] [stderr]                |                            ^^^^^^^^^ required by this bound in `InputExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileInput: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/input.rs:89:39
[INFO] [stderr]                |
[INFO] [stderr]             89 | crate::macros::input::impl_input_ext!(FileInput, Fl_File_Input);
[INFO] [stderr]                |                                       ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileInput`
[INFO] [stderr]               --> src/input.rs:81:1
[INFO] [stderr]                |
[INFO] [stderr]             81 | pub struct FileInput {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::InputExt`
[INFO] [stderr]               --> src/prelude.rs:824:28
[INFO] [stderr]                |
[INFO] [stderr]            824 | pub unsafe trait InputExt: WidgetExt {
[INFO] [stderr]                |                            ^^^^^^^^^ required by this bound in `InputExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SecretInput: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/input.rs:113:39
[INFO] [stderr]                |
[INFO] [stderr]            113 | crate::macros::input::impl_input_ext!(SecretInput, Fl_Secret_Input);
[INFO] [stderr]                |                                       ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SecretInput`
[INFO] [stderr]               --> src/input.rs:105:1
[INFO] [stderr]                |
[INFO] [stderr]            105 | pub struct SecretInput {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::InputExt`
[INFO] [stderr]               --> src/prelude.rs:824:28
[INFO] [stderr]                |
[INFO] [stderr]            824 | pub unsafe trait InputExt: WidgetExt {
[INFO] [stderr]                |                            ^^^^^^^^^ required by this bound in `InputExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `output::Output: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/output.rs:28:39
[INFO] [stderr]                |
[INFO] [stderr]             28 | crate::macros::input::impl_input_ext!(Output, Fl_Output);
[INFO] [stderr]                |                                       ^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `output::Output`
[INFO] [stderr]               --> src/output.rs:20:1
[INFO] [stderr]                |
[INFO] [stderr]             20 | pub struct Output {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::InputExt`
[INFO] [stderr]               --> src/prelude.rs:824:28
[INFO] [stderr]                |
[INFO] [stderr]            824 | pub unsafe trait InputExt: WidgetExt {
[INFO] [stderr]                |                            ^^^^^^^^^ required by this bound in `InputExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultilineOutput: prelude::WidgetExt` is not satisfied
[INFO] [stderr]               --> src/output.rs:40:39
[INFO] [stderr]                |
[INFO] [stderr]             40 | crate::macros::input::impl_input_ext!(MultilineOutput, Fl_Multiline_Output);
[INFO] [stderr]                |                                       ^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultilineOutput`
[INFO] [stderr]               --> src/output.rs:32:1
[INFO] [stderr]                |
[INFO] [stderr]             32 | pub struct MultilineOutput {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:133:1
[INFO] [stderr]                |
[INFO] [stderr]            133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::InputExt`
[INFO] [stderr]               --> src/prelude.rs:824:28
[INFO] [stderr]                |
[INFO] [stderr]            824 | pub unsafe trait InputExt: WidgetExt {
[INFO] [stderr]                |                            ^^^^^^^^^ required by this bound in `InputExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `TextDisplay: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/text.rs:944:43
[INFO] [stderr]                 |
[INFO] [stderr]             944 | crate::macros::display::impl_display_ext!(TextDisplay, Fl_Text_Display);
[INFO] [stderr]                 |                                           ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `TextDisplay`
[INFO] [stderr]                --> src/text.rs:936:1
[INFO] [stderr]                 |
[INFO] [stderr]             936 | pub struct TextDisplay {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::DisplayExt`
[INFO] [stderr]                --> src/prelude.rs:1098:30
[INFO] [stderr]                 |
[INFO] [stderr]            1098 | pub unsafe trait DisplayExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `DisplayExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `TextEditor: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/text.rs:956:43
[INFO] [stderr]                 |
[INFO] [stderr]             956 | crate::macros::display::impl_display_ext!(TextEditor, Fl_Text_Editor);
[INFO] [stderr]                 |                                           ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `TextEditor`
[INFO] [stderr]                --> src/text.rs:948:1
[INFO] [stderr]                 |
[INFO] [stderr]             948 | pub struct TextEditor {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::DisplayExt`
[INFO] [stderr]                --> src/prelude.rs:1098:30
[INFO] [stderr]                 |
[INFO] [stderr]            1098 | pub unsafe trait DisplayExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `DisplayExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SimpleTerminal: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/text.rs:981:43
[INFO] [stderr]                 |
[INFO] [stderr]             981 | crate::macros::display::impl_display_ext!(SimpleTerminal, Fl_Simple_Terminal);
[INFO] [stderr]                 |                                           ^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SimpleTerminal`
[INFO] [stderr]                --> src/text.rs:973:1
[INFO] [stderr]                 |
[INFO] [stderr]             973 | pub struct SimpleTerminal {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::DisplayExt`
[INFO] [stderr]                --> src/prelude.rs:1098:30
[INFO] [stderr]                 |
[INFO] [stderr]            1098 | pub unsafe trait DisplayExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `DisplayExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Slider: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:20:45
[INFO] [stderr]                 |
[INFO] [stderr]              20 | crate::macros::valuator::impl_valuator_ext!(Slider, Fl_Slider);
[INFO] [stderr]                 |                                             ^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Slider`
[INFO] [stderr]                --> src/valuator.rs:12:1
[INFO] [stderr]                 |
[INFO] [stderr]              12 | pub struct Slider {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `NiceSlider: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:55:45
[INFO] [stderr]                 |
[INFO] [stderr]              55 | crate::macros::valuator::impl_valuator_ext!(NiceSlider, Fl_Nice_Slider);
[INFO] [stderr]                 |                                             ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `NiceSlider`
[INFO] [stderr]                --> src/valuator.rs:47:1
[INFO] [stderr]                 |
[INFO] [stderr]              47 | pub struct NiceSlider {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Dial: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:110:45
[INFO] [stderr]                 |
[INFO] [stderr]             110 | crate::macros::valuator::impl_valuator_ext!(Dial, Fl_Dial);
[INFO] [stderr]                 |                                             ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Dial`
[INFO] [stderr]                --> src/valuator.rs:102:1
[INFO] [stderr]                 |
[INFO] [stderr]             102 | pub struct Dial {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LineDial: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:145:45
[INFO] [stderr]                 |
[INFO] [stderr]             145 | crate::macros::valuator::impl_valuator_ext!(LineDial, Fl_Line_Dial);
[INFO] [stderr]                 |                                             ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `LineDial`
[INFO] [stderr]                --> src/valuator.rs:137:1
[INFO] [stderr]                 |
[INFO] [stderr]             137 | pub struct LineDial {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Counter: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:194:45
[INFO] [stderr]                 |
[INFO] [stderr]             194 | crate::macros::valuator::impl_valuator_ext!(Counter, Fl_Counter);
[INFO] [stderr]                 |                                             ^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Counter`
[INFO] [stderr]                --> src/valuator.rs:186:1
[INFO] [stderr]                 |
[INFO] [stderr]             186 | pub struct Counter {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SimpleCounter: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:218:45
[INFO] [stderr]                 |
[INFO] [stderr]             218 | crate::macros::valuator::impl_valuator_ext!(SimpleCounter, Fl_Simple_Counter);
[INFO] [stderr]                 |                                             ^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SimpleCounter`
[INFO] [stderr]                --> src/valuator.rs:210:1
[INFO] [stderr]                 |
[INFO] [stderr]             210 | pub struct SimpleCounter {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Scrollbar: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:230:45
[INFO] [stderr]                 |
[INFO] [stderr]             230 | crate::macros::valuator::impl_valuator_ext!(Scrollbar, Fl_Scrollbar);
[INFO] [stderr]                 |                                             ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Scrollbar`
[INFO] [stderr]                --> src/valuator.rs:222:1
[INFO] [stderr]                 |
[INFO] [stderr]             222 | pub struct Scrollbar {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Roller: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:322:45
[INFO] [stderr]                 |
[INFO] [stderr]             322 | crate::macros::valuator::impl_valuator_ext!(Roller, Fl_Roller);
[INFO] [stderr]                 |                                             ^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Roller`
[INFO] [stderr]                --> src/valuator.rs:314:1
[INFO] [stderr]                 |
[INFO] [stderr]             314 | pub struct Roller {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `ValueSlider: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:334:45
[INFO] [stderr]                 |
[INFO] [stderr]             334 | crate::macros::valuator::impl_valuator_ext!(ValueSlider, Fl_Value_Slider);
[INFO] [stderr]                 |                                             ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `ValueSlider`
[INFO] [stderr]                --> src/valuator.rs:326:1
[INFO] [stderr]                 |
[INFO] [stderr]             326 | pub struct ValueSlider {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Adjuster: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:426:45
[INFO] [stderr]                 |
[INFO] [stderr]             426 | crate::macros::valuator::impl_valuator_ext!(Adjuster, Fl_Adjuster);
[INFO] [stderr]                 |                                             ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Adjuster`
[INFO] [stderr]                --> src/valuator.rs:418:1
[INFO] [stderr]                 |
[INFO] [stderr]             418 | pub struct Adjuster {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `ValueInput: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:439:45
[INFO] [stderr]                 |
[INFO] [stderr]             439 | crate::macros::valuator::impl_valuator_ext!(ValueInput, Fl_Value_Input);
[INFO] [stderr]                 |                                             ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `ValueInput`
[INFO] [stderr]                --> src/valuator.rs:431:1
[INFO] [stderr]                 |
[INFO] [stderr]             431 | pub struct ValueInput {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `ValueOutput: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:494:45
[INFO] [stderr]                 |
[INFO] [stderr]             494 | crate::macros::valuator::impl_valuator_ext!(ValueOutput, Fl_Value_Output);
[INFO] [stderr]                 |                                             ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `ValueOutput`
[INFO] [stderr]                --> src/valuator.rs:486:1
[INFO] [stderr]                 |
[INFO] [stderr]             486 | pub struct ValueOutput {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FillSlider: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:538:45
[INFO] [stderr]                 |
[INFO] [stderr]             538 | crate::macros::valuator::impl_valuator_ext!(FillSlider, Fl_Fill_Slider);
[INFO] [stderr]                 |                                             ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FillSlider`
[INFO] [stderr]                --> src/valuator.rs:530:1
[INFO] [stderr]                 |
[INFO] [stderr]             530 | pub struct FillSlider {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FillDial: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:550:45
[INFO] [stderr]                 |
[INFO] [stderr]             550 | crate::macros::valuator::impl_valuator_ext!(FillDial, Fl_Fill_Dial);
[INFO] [stderr]                 |                                             ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FillDial`
[INFO] [stderr]                --> src/valuator.rs:542:1
[INFO] [stderr]                 |
[INFO] [stderr]             542 | pub struct FillDial {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HorSlider: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:585:45
[INFO] [stderr]                 |
[INFO] [stderr]             585 | crate::macros::valuator::impl_valuator_ext!(HorSlider, Fl_Hor_Slider);
[INFO] [stderr]                 |                                             ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HorSlider`
[INFO] [stderr]                --> src/valuator.rs:577:1
[INFO] [stderr]                 |
[INFO] [stderr]             577 | pub struct HorSlider {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HorFillSlider: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:620:45
[INFO] [stderr]                 |
[INFO] [stderr]             620 | crate::macros::valuator::impl_valuator_ext!(HorFillSlider, Fl_Hor_Fill_Slider);
[INFO] [stderr]                 |                                             ^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HorFillSlider`
[INFO] [stderr]                --> src/valuator.rs:612:1
[INFO] [stderr]                 |
[INFO] [stderr]             612 | pub struct HorFillSlider {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HorNiceSlider: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:655:45
[INFO] [stderr]                 |
[INFO] [stderr]             655 | crate::macros::valuator::impl_valuator_ext!(HorNiceSlider, Fl_Hor_Nice_Slider);
[INFO] [stderr]                 |                                             ^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HorNiceSlider`
[INFO] [stderr]                --> src/valuator.rs:647:1
[INFO] [stderr]                 |
[INFO] [stderr]             647 | pub struct HorNiceSlider {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HorValueSlider: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/valuator.rs:690:45
[INFO] [stderr]                 |
[INFO] [stderr]             690 | crate::macros::valuator::impl_valuator_ext!(HorValueSlider, Fl_Hor_Value_Slider);
[INFO] [stderr]                 |                                             ^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HorValueSlider`
[INFO] [stderr]                --> src/valuator.rs:682:1
[INFO] [stderr]                 |
[INFO] [stderr]             682 | pub struct HorValueSlider {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::ValuatorExt`
[INFO] [stderr]                --> src/prelude.rs:1054:31
[INFO] [stderr]                 |
[INFO] [stderr]            1054 | pub unsafe trait ValuatorExt: WidgetExt {
[INFO] [stderr]                 |                               ^^^^^^^^^ required by this bound in `ValuatorExt`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `DoubleWindow` in the current scope
[INFO] [stderr]               --> src/app/widget.rs:16:41
[INFO] [stderr]                |
[INFO] [stderr]             16 |             Some(crate::window::Window::from_widget_ptr(ptr as *mut _))
[INFO] [stderr]                |                                         ^^^^^^^^^^^^^^^ associated function or constant not found in `DoubleWindow`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:368:1
[INFO] [stderr]                |
[INFO] [stderr]            368 | pub struct DoubleWindow {
[INFO] [stderr]                | ----------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `DoubleWindow` in the current scope
[INFO] [stderr]               --> src/app/widget.rs:107:29
[INFO] [stderr]                |
[INFO] [stderr]            107 |             let x = Window::from_widget_ptr(x as *mut fltk_sys::widget::Fl_Widget);
[INFO] [stderr]                |                             ^^^^^^^^^^^^^^^ associated function or constant not found in `DoubleWindow`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:368:1
[INFO] [stderr]                |
[INFO] [stderr]            368 | pub struct DoubleWindow {
[INFO] [stderr]                | ----------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `DoubleWindow` in the current scope
[INFO] [stderr]               --> src/app/widget.rs:120:29
[INFO] [stderr]                |
[INFO] [stderr]            120 |             let x = Window::from_widget_ptr(x as *mut fltk_sys::widget::Fl_Widget);
[INFO] [stderr]                |                             ^^^^^^^^^^^^^^^ associated function or constant not found in `DoubleWindow`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:368:1
[INFO] [stderr]                |
[INFO] [stderr]            368 | pub struct DoubleWindow {
[INFO] [stderr]                | ----------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `DoubleWindow` in the current scope
[INFO] [stderr]               --> src/app/widget.rs:133:29
[INFO] [stderr]                |
[INFO] [stderr]            133 |             let x = Window::from_widget_ptr(x as *mut fltk_sys::widget::Fl_Widget);
[INFO] [stderr]                |                             ^^^^^^^^^^^^^^^ associated function or constant not found in `DoubleWindow`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:368:1
[INFO] [stderr]                |
[INFO] [stderr]            368 | pub struct DoubleWindow {
[INFO] [stderr]                | ----------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Widget` in the current scope
[INFO] [stderr]               --> src/app/widget.rs:162:41
[INFO] [stderr]                |
[INFO] [stderr]            162 |             Some(crate::widget::Widget::from_widget_ptr(ptr as *mut _))
[INFO] [stderr]                |                                         ^^^^^^^^^^^^^^^ associated function or constant not found in `Widget`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/widget.rs:31:1
[INFO] [stderr]                |
[INFO] [stderr]             31 | pub struct Widget {
[INFO] [stderr]                | ----------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Widget` in the current scope
[INFO] [stderr]               --> src/app/widget.rs:174:41
[INFO] [stderr]                |
[INFO] [stderr]            174 |             Some(crate::widget::Widget::from_widget_ptr(
[INFO] [stderr]                |                                         ^^^^^^^^^^^^^^^ associated function or constant not found in `Widget`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/widget.rs:31:1
[INFO] [stderr]                |
[INFO] [stderr]             31 | pub struct Widget {
[INFO] [stderr]                | ----------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `DoubleWindow: prelude::WidgetBase` is not satisfied
[INFO] [stderr]               --> src/app/widget.rs:190:44
[INFO] [stderr]                |
[INFO] [stderr]            190 |         let first: Window = unsafe { first.into_widget() };
[INFO] [stderr]                |                                            ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetBase` is not implemented for `DoubleWindow`
[INFO] [stderr]               --> src/window.rs:368:1
[INFO] [stderr]                |
[INFO] [stderr]            368 | pub struct DoubleWindow {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::WidgetExt::into_widget`
[INFO] [stderr]               --> src/prelude.rs:386:30
[INFO] [stderr]                |
[INFO] [stderr]            386 |     unsafe fn into_widget<W: WidgetBase>(&self) -> W
[INFO] [stderr]                |                              ^^^^^^^^^^ required by this bound in `WidgetExt::into_widget`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `DoubleWindow: prelude::WindowExt` is not satisfied
[INFO] [stderr]               --> src/app/widget.rs:193:44
[INFO] [stderr]                |
[INFO] [stderr]            193 |         while let Some(wind) = next_window(&win) {
[INFO] [stderr]                |                                ----------- ^^^^ unsatisfied trait bound
[INFO] [stderr]                |                                |
[INFO] [stderr]                |                                required by a bound introduced by this call
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WindowExt` is not implemented for `DoubleWindow`
[INFO] [stderr]               --> src/window.rs:368:1
[INFO] [stderr]                |
[INFO] [stderr]            368 | pub struct DoubleWindow {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:698:1
[INFO] [stderr]                |
[INFO] [stderr]            698 | pub unsafe trait WindowExt: GroupExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `next_window`
[INFO] [stderr]               --> src/app/widget.rs:114:23
[INFO] [stderr]                |
[INFO] [stderr]            114 | pub fn next_window<W: WindowExt>(w: &W) -> Option<impl WindowExt + use<W>> {
[INFO] [stderr]                |                       ^^^^^^^^^ required by this bound in `next_window`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `DoubleWindow: prelude::WindowExt` is not satisfied
[INFO] [stderr]               --> src/app/widget.rs:193:32
[INFO] [stderr]                |
[INFO] [stderr]            193 |         while let Some(wind) = next_window(&win) {
[INFO] [stderr]                |                                ^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WindowExt` is not implemented for `DoubleWindow`
[INFO] [stderr]               --> src/window.rs:368:1
[INFO] [stderr]                |
[INFO] [stderr]            368 | pub struct DoubleWindow {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:698:1
[INFO] [stderr]                |
[INFO] [stderr]            698 | pub unsafe trait WindowExt: GroupExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `next_window`
[INFO] [stderr]               --> src/app/widget.rs:114:23
[INFO] [stderr]                |
[INFO] [stderr]            114 | pub fn next_window<W: WindowExt>(w: &W) -> Option<impl WindowExt + use<W>> {
[INFO] [stderr]                |                       ^^^^^^^^^ required by this bound in `next_window`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `DoubleWindow: prelude::WidgetBase` is not satisfied
[INFO] [stderr]               --> src/app/widget.rs:194:49
[INFO] [stderr]                |
[INFO] [stderr]            194 |             let w = unsafe { wind.into_widget::<Window>() };
[INFO] [stderr]                |                                   -----------   ^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |                                   |
[INFO] [stderr]                |                                   required by a bound introduced by this call
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WidgetBase` is not implemented for `DoubleWindow`
[INFO] [stderr]               --> src/window.rs:368:1
[INFO] [stderr]                |
[INFO] [stderr]            368 | pub struct DoubleWindow {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::WidgetExt::into_widget`
[INFO] [stderr]               --> src/prelude.rs:386:30
[INFO] [stderr]                |
[INFO] [stderr]            386 |     unsafe fn into_widget<W: WidgetBase>(&self) -> W
[INFO] [stderr]                |                              ^^^^^^^^^^ required by this bound in `WidgetExt::into_widget`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `DoubleWindow: prelude::WindowExt` is not satisfied
[INFO] [stderr]               --> src/app/widget.rs:194:30
[INFO] [stderr]                |
[INFO] [stderr]            194 |             let w = unsafe { wind.into_widget::<Window>() };
[INFO] [stderr]                |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WindowExt` is not implemented for `DoubleWindow`
[INFO] [stderr]               --> src/window.rs:368:1
[INFO] [stderr]                |
[INFO] [stderr]            368 | pub struct DoubleWindow {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:698:1
[INFO] [stderr]                |
[INFO] [stderr]            698 | pub unsafe trait WindowExt: GroupExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `next_window`
[INFO] [stderr]               --> src/app/widget.rs:114:23
[INFO] [stderr]                |
[INFO] [stderr]            114 | pub fn next_window<W: WindowExt>(w: &W) -> Option<impl WindowExt + use<W>> {
[INFO] [stderr]                |                       ^^^^^^^^^ required by this bound in `next_window`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `DoubleWindow: prelude::WindowExt` is not satisfied
[INFO] [stderr]               --> src/app/widget.rs:187:32
[INFO] [stderr]                |
[INFO] [stderr]            187 | pub fn windows() -> Option<Vec<impl WindowExt>> {
[INFO] [stderr]                |                                ^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `prelude::WindowExt` is not implemented for `DoubleWindow`
[INFO] [stderr]               --> src/window.rs:368:1
[INFO] [stderr]                |
[INFO] [stderr]            368 | pub struct DoubleWindow {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]               --> src/prelude.rs:698:1
[INFO] [stderr]                |
[INFO] [stderr]            698 | pub unsafe trait WindowExt: GroupExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Button` in the current scope
[INFO] [stderr]               --> src/dialog.rs:726:45
[INFO] [stderr]                |
[INFO] [stderr]            726 |                 Some(crate::button::Button::from_widget_ptr(ptr as *mut _))
[INFO] [stderr]                |                                             ^^^^^^^^^^^^^^^ associated function or constant not found in `Button`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:8:1
[INFO] [stderr]                |
[INFO] [stderr]              8 | pub struct Button {
[INFO] [stderr]                | ----------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `CheckButton` in the current scope
[INFO] [stderr]               --> src/dialog.rs:739:50
[INFO] [stderr]                |
[INFO] [stderr]            739 |                 Some(crate::button::CheckButton::from_widget_ptr(
[INFO] [stderr]                |                                                  ^^^^^^^^^^^^^^^ associated function or constant not found in `CheckButton`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:147:1
[INFO] [stderr]                |
[INFO] [stderr]            147 | pub struct CheckButton {
[INFO] [stderr]                | ---------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `CheckButton` in the current scope
[INFO] [stderr]               --> src/dialog.rs:754:50
[INFO] [stderr]                |
[INFO] [stderr]            754 |                 Some(crate::button::CheckButton::from_widget_ptr(
[INFO] [stderr]                |                                                  ^^^^^^^^^^^^^^^ associated function or constant not found in `CheckButton`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/button.rs:147:1
[INFO] [stderr]                |
[INFO] [stderr]            147 | pub struct CheckButton {
[INFO] [stderr]                | ---------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no method named `parent` found for struct `Group` in the current scope
[INFO] [stderr]                --> src/dialog.rs:1072:18
[INFO] [stderr]                 |
[INFO] [stderr]            1067 |               let win_ptr = self
[INFO] [stderr]                 |  ___________________________-
[INFO] [stderr]            1068 | |                 .new_button()
[INFO] [stderr]            1069 | |                 .unwrap()
[INFO] [stderr]                 | |                  -------- method `parent` is available on `&impl prelude::ButtonExt`
[INFO] [stderr]            1070 | |                 .parent()
[INFO] [stderr]            1071 | |                 .unwrap()
[INFO] [stderr]            1072 | |                 .parent()
[INFO] [stderr]                 | |                 -^^^^^^ method not found in `Group`
[INFO] [stderr]                 | |_________________|
[INFO] [stderr]                 |
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/group.rs:17:1
[INFO] [stderr]                 |
[INFO] [stderr]              17 |   pub struct Group {
[INFO] [stderr]                 |   ---------------- method `parent` not found for this struct
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetExt` defines an item `parent`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `DoubleWindow` in the current scope
[INFO] [stderr]                --> src/dialog.rs:1075:36
[INFO] [stderr]                 |
[INFO] [stderr]            1075 |             crate::window::Window::from_widget_ptr(win_ptr)
[INFO] [stderr]                 |                                    ^^^^^^^^^^^^^^^ associated function or constant not found in `DoubleWindow`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/window.rs:368:1
[INFO] [stderr]                 |
[INFO] [stderr]             368 | pub struct DoubleWindow {
[INFO] [stderr]                 | ----------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Frame` in the current scope
[INFO] [stderr]                --> src/dialog.rs:1333:35
[INFO] [stderr]                 |
[INFO] [stderr]            1333 |     unsafe { crate::frame::Frame::from_widget_ptr(Fl_message_icon() as _) }
[INFO] [stderr]                 |                                   ^^^^^^^^^^^^^^^ associated function or constant not found in `Frame`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/frame.rs:8:1
[INFO] [stderr]                 |
[INFO] [stderr]               8 | pub struct Frame {
[INFO] [stderr]                 | ---------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Group` in the current scope
[INFO] [stderr]               --> src/group.rs:262:29
[INFO] [stderr]                |
[INFO] [stderr]             17 | pub struct Group {
[INFO] [stderr]                | ---------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]            262 |                 Some(Group::from_widget_ptr(
[INFO] [stderr]                |                             ^^^^^^^^^^^^^^^ associated function or constant not found in `Group`
[INFO] [stderr]                |
[INFO] [stderr]            note: if you're trying to build a new `Group` consider using one of the following associated functions:
[INFO] [stderr]                  Group::current
[INFO] [stderr]                  Group::try_current
[INFO] [stderr]               --> src/group.rs:30:5
[INFO] [stderr]                |
[INFO] [stderr]             30 |     pub fn current() -> Group {
[INFO] [stderr]                |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            ...
[INFO] [stderr]             39 |     pub fn try_current() -> Option<Group> {
[INFO] [stderr]                |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Group` in the current scope
[INFO] [stderr]               --> src/group.rs:291:29
[INFO] [stderr]                |
[INFO] [stderr]             17 | pub struct Group {
[INFO] [stderr]                | ---------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]            291 |                 Some(Group::from_widget_ptr(
[INFO] [stderr]                |                             ^^^^^^^^^^^^^^^ associated function or constant not found in `Group`
[INFO] [stderr]                |
[INFO] [stderr]            note: if you're trying to build a new `Group` consider using one of the following associated functions:
[INFO] [stderr]                  Group::current
[INFO] [stderr]                  Group::try_current
[INFO] [stderr]               --> src/group.rs:30:5
[INFO] [stderr]                |
[INFO] [stderr]             30 |     pub fn current() -> Group {
[INFO] [stderr]                |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            ...
[INFO] [stderr]             39 |     pub fn try_current() -> Option<Group> {
[INFO] [stderr]                |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Widget` in the current scope
[INFO] [stderr]               --> src/group.rs:465:30
[INFO] [stderr]                |
[INFO] [stderr]            465 |                 Some(Widget::from_widget_ptr(ptr))
[INFO] [stderr]                |                              ^^^^^^^^^^^^^^^ associated function or constant not found in `Widget`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/widget.rs:31:1
[INFO] [stderr]                |
[INFO] [stderr]             31 | pub struct Widget {
[INFO] [stderr]                | ----------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Widget` in the current scope
[INFO] [stderr]               --> src/misc.rs:389:21
[INFO] [stderr]                |
[INFO] [stderr]            389 |             Widget::from_widget_ptr(widget_ptr as *mut fltk_sys::widget::Fl_Widget)
[INFO] [stderr]                |                     ^^^^^^^^^^^^^^^ associated function or constant not found in `Widget`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/widget.rs:31:1
[INFO] [stderr]                |
[INFO] [stderr]             31 | pub struct Widget {
[INFO] [stderr]                | ----------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `DoubleWindow` in the current scope
[INFO] [stderr]               --> src/misc.rs:473:21
[INFO] [stderr]                |
[INFO] [stderr]            473 |             Window::from_widget_ptr(wind as *mut fltk_sys::widget::Fl_Widget)
[INFO] [stderr]                |                     ^^^^^^^^^^^^^^^ associated function or constant not found in `DoubleWindow`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/window.rs:368:1
[INFO] [stderr]                |
[INFO] [stderr]            368 | pub struct DoubleWindow {
[INFO] [stderr]                | ----------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Widget` in the current scope
[INFO] [stderr]                --> src/tree.rs:1395:30
[INFO] [stderr]                 |
[INFO] [stderr]            1395 |                 Some(Widget::from_widget_ptr(ptr))
[INFO] [stderr]                 |                              ^^^^^^^^^^^^^^^ associated function or constant not found in `Widget`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/widget.rs:31:1
[INFO] [stderr]                 |
[INFO] [stderr]              31 | pub struct Widget {
[INFO] [stderr]                 | ----------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `DoubleWindow` in the current scope
[INFO] [stderr]               --> src/window.rs:167:34
[INFO] [stderr]                |
[INFO] [stderr]            167 |                     Some(Window::from_widget_ptr(
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^^ associated function or constant not found in `DoubleWindow`
[INFO] [stderr]            ...
[INFO] [stderr]            363 | impl_top_win!(SingleWindow);
[INFO] [stderr]                | --------------------------- in this macro invocation
[INFO] [stderr]            ...
[INFO] [stderr]            368 | pub struct DoubleWindow {
[INFO] [stderr]                | ----------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                = note: this error originates in the macro `impl_top_win` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `DoubleWindow` in the current scope
[INFO] [stderr]               --> src/window.rs:167:34
[INFO] [stderr]                |
[INFO] [stderr]            167 |                     Some(Window::from_widget_ptr(
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^^ associated function or constant not found in `DoubleWindow`
[INFO] [stderr]            ...
[INFO] [stderr]            368 | pub struct DoubleWindow {
[INFO] [stderr]                | ----------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]            387 | impl_top_win!(DoubleWindow);
[INFO] [stderr]                | --------------------------- in this macro invocation
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                = note: this error originates in the macro `impl_top_win` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `DoubleWindow` in the current scope
[INFO] [stderr]               --> src/window.rs:167:34
[INFO] [stderr]                |
[INFO] [stderr]            167 |                     Some(Window::from_widget_ptr(
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^^^ associated function or constant not found in `DoubleWindow`
[INFO] [stderr]            ...
[INFO] [stderr]            368 | pub struct DoubleWindow {
[INFO] [stderr]                | ----------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]            513 | impl_top_win!(OverlayWindow);
[INFO] [stderr]                | ---------------------------- in this macro invocation
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                = note: this error originates in the macro `impl_top_win` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_image_ptr` found for struct `RgbImage` in the current scope
[INFO] [stderr]                --> src/app/event.rs:251:42
[INFO] [stderr]                 |
[INFO] [stderr]             251 |             Some(crate::image::RgbImage::from_image_ptr(image as _))
[INFO] [stderr]                 |                                          ^^^^^^^^^^^^^^ associated function or constant not found in `RgbImage`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/image.rs:841:1
[INFO] [stderr]                 |
[INFO] [stderr]             841 | pub struct RgbImage {
[INFO] [stderr]                 | ------------------- associated function or constant `from_image_ptr` not found for this struct
[INFO] [stderr]                 |
[INFO] [stderr]            note: if you're trying to build a new `RgbImage` consider using one of the following associated functions:
[INFO] [stderr]                  RgbImage::new
[INFO] [stderr]                  RgbImage::from_data
[INFO] [stderr]                  RgbImage::new_ext
[INFO] [stderr]                  RgbImage::from_data_ext
[INFO] [stderr]                  RgbImage::from_pixmap
[INFO] [stderr]                --> src/image.rs:852:5
[INFO] [stderr]                 |
[INFO] [stderr]             852 |       pub fn new(data: &[u8], w: i32, h: i32, depth: ColorDepth) -> Result<RgbImage, FltkError> {
[INFO] [stderr]                 |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            ...
[INFO] [stderr]             874 | /     pub unsafe fn from_data(
[INFO] [stderr]             875 | |         data: &[u8],
[INFO] [stderr]             876 | |         w: i32,
[INFO] [stderr]             877 | |         h: i32,
[INFO] [stderr]             878 | |         depth: ColorDepth,
[INFO] [stderr]             879 | |     ) -> Result<RgbImage, FltkError> {
[INFO] [stderr]                 | |____________________________________^
[INFO] [stderr]            ...
[INFO] [stderr]             902 | /     pub unsafe fn new_ext(
[INFO] [stderr]             903 | |         data: &[u8],
[INFO] [stderr]             904 | |         w: i32,
[INFO] [stderr]             905 | |         h: i32,
[INFO] [stderr]             906 | |         depth: i32,
[INFO] [stderr]             907 | |         line_data: i32,
[INFO] [stderr]             908 | |     ) -> Result<RgbImage, FltkError> {
[INFO] [stderr]                 | |____________________________________^
[INFO] [stderr]            ...
[INFO] [stderr]             928 | /     pub unsafe fn from_data_ext(
[INFO] [stderr]             929 | |         data: &[u8],
[INFO] [stderr]             930 | |         w: i32,
[INFO] [stderr]             931 | |         h: i32,
[INFO] [stderr]             932 | |         depth: i32,
[INFO] [stderr]             933 | |         line_data: i32,
[INFO] [stderr]             934 | |     ) -> Result<RgbImage, FltkError> {
[INFO] [stderr]                 | |____________________________________^
[INFO] [stderr]            ...
[INFO] [stderr]             948 |       pub fn from_pixmap(image: &Pixmap) -> RgbImage {
[INFO] [stderr]                 |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::ImageExt` defines an item `from_image_ptr`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:1600:1
[INFO] [stderr]                 |
[INFO] [stderr]            1600 | pub unsafe trait ImageExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Widget` in the current scope
[INFO] [stderr]               --> src/app/widget.rs:48:50
[INFO] [stderr]                |
[INFO] [stderr]             48 |             let mut wid = crate::widget::Widget::from_widget_ptr(wid);
[INFO] [stderr]                |                                                  ^^^^^^^^^^^^^^^ associated function or constant not found in `Widget`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/widget.rs:31:1
[INFO] [stderr]                |
[INFO] [stderr]             31 | pub struct Widget {
[INFO] [stderr]                | ----------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `Browser` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `Browser`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ------------------ associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]              45 | crate::macros::widget::impl_widget_default!(Browser);
[INFO] [stderr]                 | ---------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:10:53
[INFO] [stderr]                 |
[INFO] [stderr]              10 |                         if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                     ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:22:26
[INFO] [stderr]                 |
[INFO] [stderr]              22 |                     self.add(item);
[INFO] [stderr]                 |                          ^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::add`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::add`
[INFO] [stderr]            ...
[INFO] [stderr]            1301 |     fn add(&mut self, item: &str);
[INFO] [stderr]                 |        --- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:23:26
[INFO] [stderr]                 |
[INFO] [stderr]              23 |                     self.set_data(self.size(), data);
[INFO] [stderr]                 |                          ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::set_data`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::set_data`
[INFO] [stderr]            ...
[INFO] [stderr]            1409 |     fn set_data<T: Clone + 'static>(&mut self, line: i32, data: T);
[INFO] [stderr]                 |        -------- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:32:26
[INFO] [stderr]                 |
[INFO] [stderr]              32 |                     self.insert(line, item);
[INFO] [stderr]                 |                          ^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::insert`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::insert`
[INFO] [stderr]            ...
[INFO] [stderr]            1306 |     fn insert(&mut self, line: i32, item: &str);
[INFO] [stderr]                 |        ------ required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:33:26
[INFO] [stderr]                 |
[INFO] [stderr]              33 |                     self.set_data(line, data);
[INFO] [stderr]                 |                          ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::set_data`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::set_data`
[INFO] [stderr]            ...
[INFO] [stderr]            1409 |     fn set_data<T: Clone + 'static>(&mut self, line: i32, data: T);
[INFO] [stderr]                 |        -------- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:37:45
[INFO] [stderr]                 |
[INFO] [stderr]              37 |                     if to > 0 && to <= self.size() + 1 && from > 0 && from <= self.size() + 1 {
[INFO] [stderr]                 |                                             ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:37:84
[INFO] [stderr]                 |
[INFO] [stderr]              37 |                     if to > 0 && to <= self.size() + 1 && from > 0 && from <= self.size() + 1 {
[INFO] [stderr]                 |                                                                                    ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:43:43
[INFO] [stderr]                 |
[INFO] [stderr]              43 |                     if a > 0 && a <= self.size() + 1 && b > 0 && b <= self.size() + 1 {
[INFO] [stderr]                 |                                           ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:43:76
[INFO] [stderr]                 |
[INFO] [stderr]              43 |                     if a > 0 && a <= self.size() + 1 && b > 0 && b <= self.size() + 1 {
[INFO] [stderr]                 |                                                                            ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:61:49
[INFO] [stderr]                 |
[INFO] [stderr]              61 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:69:49
[INFO] [stderr]                 |
[INFO] [stderr]              69 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:77:49
[INFO] [stderr]                 |
[INFO] [stderr]              77 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:87:49
[INFO] [stderr]                 |
[INFO] [stderr]              87 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:106:26
[INFO] [stderr]                 |
[INFO] [stderr]             106 |                     self.text(self.value())
[INFO] [stderr]                 |                          ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::text`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::text`
[INFO] [stderr]            ...
[INFO] [stderr]            1331 |     fn text(&self, line: i32) -> Option<String>;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:110:49
[INFO] [stderr]                 |
[INFO] [stderr]             110 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:147:49
[INFO] [stderr]                 |
[INFO] [stderr]             147 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:171:53
[INFO] [stderr]                 |
[INFO] [stderr]             171 |                         if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                     ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_image_ptr` found for struct `image::Image` in the current scope
[INFO] [stderr]                --> src/macros/browser.rs:177:55
[INFO] [stderr]                 |
[INFO] [stderr]             177 | ...                   $crate::image::Image::from_image_ptr(image_ptr as *mut fltk_sys::image::Fl_Image);
[INFO] [stderr]                 |                                             ^^^^^^^^^^^^^^ associated function or constant not found in `image::Image`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/image.rs:12:1
[INFO] [stderr]                 |
[INFO] [stderr]              12 | pub struct Image {
[INFO] [stderr]                 | ---------------- associated function or constant `from_image_ptr` not found for this struct
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::ImageExt` defines an item `from_image_ptr`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:1600:1
[INFO] [stderr]                 |
[INFO] [stderr]            1600 | pub unsafe trait ImageExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:188:53
[INFO] [stderr]                 |
[INFO] [stderr]             188 |                         if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                     ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:195:49
[INFO] [stderr]                 |
[INFO] [stderr]             195 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:201:49
[INFO] [stderr]                 |
[INFO] [stderr]             201 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:207:49
[INFO] [stderr]                 |
[INFO] [stderr]             207 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:262:49
[INFO] [stderr]                 |
[INFO] [stderr]             262 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:270:49
[INFO] [stderr]                 |
[INFO] [stderr]             270 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Scrollbar` in the current scope
[INFO] [stderr]               --> src/macros/browser.rs:317:54
[INFO] [stderr]                |
[INFO] [stderr]            317 |                         $crate::valuator::Scrollbar::from_widget_ptr(
[INFO] [stderr]                |                                                      ^^^^^^^^^^^^^^^ associated function or constant not found in `Scrollbar`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:222:1
[INFO] [stderr]                |
[INFO] [stderr]            222 | pub struct Scrollbar {
[INFO] [stderr]                | -------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:46:1
[INFO] [stderr]                |
[INFO] [stderr]             46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Scrollbar` in the current scope
[INFO] [stderr]               --> src/macros/browser.rs:327:54
[INFO] [stderr]                |
[INFO] [stderr]            327 |                         $crate::valuator::Scrollbar::from_widget_ptr(
[INFO] [stderr]                |                                                      ^^^^^^^^^^^^^^^ associated function or constant not found in `Scrollbar`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:222:1
[INFO] [stderr]                |
[INFO] [stderr]            222 | pub struct Scrollbar {
[INFO] [stderr]                | -------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:46:1
[INFO] [stderr]                |
[INFO] [stderr]             46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:338:49
[INFO] [stderr]                 |
[INFO] [stderr]             338 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:346:49
[INFO] [stderr]                 |
[INFO] [stderr]             346 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:360:49
[INFO] [stderr]                 |
[INFO] [stderr]             360 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:367:29
[INFO] [stderr]                 |
[INFO] [stderr]             367 |                     if self.value() > 0 {
[INFO] [stderr]                 |                             ^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::value`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::value`
[INFO] [stderr]            ...
[INFO] [stderr]            1407 |     fn value(&self) -> i32;
[INFO] [stderr]                 |        ----- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:368:42
[INFO] [stderr]                 |
[INFO] [stderr]             368 |                         for i in 1..self.size() + 1 {
[INFO] [stderr]                 |                                          ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `Browser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:369:37
[INFO] [stderr]                 |
[INFO] [stderr]             369 | ...                   if self.selected(i) {
[INFO] [stderr]                 |                               ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:46:1
[INFO] [stderr]                 |
[INFO] [stderr]              46 | crate::macros::browser::impl_browser_ext!(Browser, Fl_Browser);
[INFO] [stderr]                 | -------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `Browser`
[INFO] [stderr]                --> src/browser.rs:38:1
[INFO] [stderr]                 |
[INFO] [stderr]              38 | pub struct Browser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::selected`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::selected`
[INFO] [stderr]            ...
[INFO] [stderr]            1328 |     fn selected(&self, line: i32) -> bool;
[INFO] [stderr]                 |        -------- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `SelectBrowser` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `SelectBrowser`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ------------------------ associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]              95 | crate::macros::widget::impl_widget_default!(SelectBrowser);
[INFO] [stderr]                 | ---------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:10:53
[INFO] [stderr]                 |
[INFO] [stderr]              10 |                         if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                     ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:22:26
[INFO] [stderr]                 |
[INFO] [stderr]              22 |                     self.add(item);
[INFO] [stderr]                 |                          ^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::add`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::add`
[INFO] [stderr]            ...
[INFO] [stderr]            1301 |     fn add(&mut self, item: &str);
[INFO] [stderr]                 |        --- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:23:26
[INFO] [stderr]                 |
[INFO] [stderr]              23 |                     self.set_data(self.size(), data);
[INFO] [stderr]                 |                          ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::set_data`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::set_data`
[INFO] [stderr]            ...
[INFO] [stderr]            1409 |     fn set_data<T: Clone + 'static>(&mut self, line: i32, data: T);
[INFO] [stderr]                 |        -------- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:32:26
[INFO] [stderr]                 |
[INFO] [stderr]              32 |                     self.insert(line, item);
[INFO] [stderr]                 |                          ^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::insert`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::insert`
[INFO] [stderr]            ...
[INFO] [stderr]            1306 |     fn insert(&mut self, line: i32, item: &str);
[INFO] [stderr]                 |        ------ required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:33:26
[INFO] [stderr]                 |
[INFO] [stderr]              33 |                     self.set_data(line, data);
[INFO] [stderr]                 |                          ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::set_data`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::set_data`
[INFO] [stderr]            ...
[INFO] [stderr]            1409 |     fn set_data<T: Clone + 'static>(&mut self, line: i32, data: T);
[INFO] [stderr]                 |        -------- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:37:45
[INFO] [stderr]                 |
[INFO] [stderr]              37 |                     if to > 0 && to <= self.size() + 1 && from > 0 && from <= self.size() + 1 {
[INFO] [stderr]                 |                                             ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:37:84
[INFO] [stderr]                 |
[INFO] [stderr]              37 |                     if to > 0 && to <= self.size() + 1 && from > 0 && from <= self.size() + 1 {
[INFO] [stderr]                 |                                                                                    ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:43:43
[INFO] [stderr]                 |
[INFO] [stderr]              43 |                     if a > 0 && a <= self.size() + 1 && b > 0 && b <= self.size() + 1 {
[INFO] [stderr]                 |                                           ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:43:76
[INFO] [stderr]                 |
[INFO] [stderr]              43 |                     if a > 0 && a <= self.size() + 1 && b > 0 && b <= self.size() + 1 {
[INFO] [stderr]                 |                                                                            ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:61:49
[INFO] [stderr]                 |
[INFO] [stderr]              61 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:69:49
[INFO] [stderr]                 |
[INFO] [stderr]              69 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:77:49
[INFO] [stderr]                 |
[INFO] [stderr]              77 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:87:49
[INFO] [stderr]                 |
[INFO] [stderr]              87 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:106:26
[INFO] [stderr]                 |
[INFO] [stderr]             106 |                     self.text(self.value())
[INFO] [stderr]                 |                          ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::text`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::text`
[INFO] [stderr]            ...
[INFO] [stderr]            1331 |     fn text(&self, line: i32) -> Option<String>;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:110:49
[INFO] [stderr]                 |
[INFO] [stderr]             110 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:147:49
[INFO] [stderr]                 |
[INFO] [stderr]             147 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:171:53
[INFO] [stderr]                 |
[INFO] [stderr]             171 |                         if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                     ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_image_ptr` found for struct `image::Image` in the current scope
[INFO] [stderr]                --> src/macros/browser.rs:177:55
[INFO] [stderr]                 |
[INFO] [stderr]             177 | ...                   $crate::image::Image::from_image_ptr(image_ptr as *mut fltk_sys::image::Fl_Image);
[INFO] [stderr]                 |                                             ^^^^^^^^^^^^^^ associated function or constant not found in `image::Image`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/image.rs:12:1
[INFO] [stderr]                 |
[INFO] [stderr]              12 | pub struct Image {
[INFO] [stderr]                 | ---------------- associated function or constant `from_image_ptr` not found for this struct
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::ImageExt` defines an item `from_image_ptr`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:1600:1
[INFO] [stderr]                 |
[INFO] [stderr]            1600 | pub unsafe trait ImageExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:188:53
[INFO] [stderr]                 |
[INFO] [stderr]             188 |                         if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                     ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:195:49
[INFO] [stderr]                 |
[INFO] [stderr]             195 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:201:49
[INFO] [stderr]                 |
[INFO] [stderr]             201 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:207:49
[INFO] [stderr]                 |
[INFO] [stderr]             207 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:262:49
[INFO] [stderr]                 |
[INFO] [stderr]             262 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:270:49
[INFO] [stderr]                 |
[INFO] [stderr]             270 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Scrollbar` in the current scope
[INFO] [stderr]               --> src/macros/browser.rs:317:54
[INFO] [stderr]                |
[INFO] [stderr]            317 |                         $crate::valuator::Scrollbar::from_widget_ptr(
[INFO] [stderr]                |                                                      ^^^^^^^^^^^^^^^ associated function or constant not found in `Scrollbar`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:222:1
[INFO] [stderr]                |
[INFO] [stderr]            222 | pub struct Scrollbar {
[INFO] [stderr]                | -------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:96:1
[INFO] [stderr]                |
[INFO] [stderr]             96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Scrollbar` in the current scope
[INFO] [stderr]               --> src/macros/browser.rs:327:54
[INFO] [stderr]                |
[INFO] [stderr]            327 |                         $crate::valuator::Scrollbar::from_widget_ptr(
[INFO] [stderr]                |                                                      ^^^^^^^^^^^^^^^ associated function or constant not found in `Scrollbar`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:222:1
[INFO] [stderr]                |
[INFO] [stderr]            222 | pub struct Scrollbar {
[INFO] [stderr]                | -------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:96:1
[INFO] [stderr]                |
[INFO] [stderr]             96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:338:49
[INFO] [stderr]                 |
[INFO] [stderr]             338 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:346:49
[INFO] [stderr]                 |
[INFO] [stderr]             346 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:360:49
[INFO] [stderr]                 |
[INFO] [stderr]             360 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:367:29
[INFO] [stderr]                 |
[INFO] [stderr]             367 |                     if self.value() > 0 {
[INFO] [stderr]                 |                             ^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::value`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::value`
[INFO] [stderr]            ...
[INFO] [stderr]            1407 |     fn value(&self) -> i32;
[INFO] [stderr]                 |        ----- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:368:42
[INFO] [stderr]                 |
[INFO] [stderr]             368 |                         for i in 1..self.size() + 1 {
[INFO] [stderr]                 |                                          ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `SelectBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:369:37
[INFO] [stderr]                 |
[INFO] [stderr]             369 | ...                   if self.selected(i) {
[INFO] [stderr]                 |                               ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:96:1
[INFO] [stderr]                 |
[INFO] [stderr]              96 | crate::macros::browser::impl_browser_ext!(SelectBrowser, Fl_Select_Browser);
[INFO] [stderr]                 | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `SelectBrowser`
[INFO] [stderr]                --> src/browser.rs:88:1
[INFO] [stderr]                 |
[INFO] [stderr]              88 | pub struct SelectBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::selected`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::selected`
[INFO] [stderr]            ...
[INFO] [stderr]            1328 |     fn selected(&self, line: i32) -> bool;
[INFO] [stderr]                 |        -------- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `MultiBrowser` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `MultiBrowser`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ----------------------- associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]             107 | crate::macros::widget::impl_widget_default!(MultiBrowser);
[INFO] [stderr]                 | --------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:10:53
[INFO] [stderr]                 |
[INFO] [stderr]              10 |                         if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                     ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:22:26
[INFO] [stderr]                 |
[INFO] [stderr]              22 |                     self.add(item);
[INFO] [stderr]                 |                          ^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::add`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::add`
[INFO] [stderr]            ...
[INFO] [stderr]            1301 |     fn add(&mut self, item: &str);
[INFO] [stderr]                 |        --- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:23:26
[INFO] [stderr]                 |
[INFO] [stderr]              23 |                     self.set_data(self.size(), data);
[INFO] [stderr]                 |                          ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::set_data`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::set_data`
[INFO] [stderr]            ...
[INFO] [stderr]            1409 |     fn set_data<T: Clone + 'static>(&mut self, line: i32, data: T);
[INFO] [stderr]                 |        -------- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:32:26
[INFO] [stderr]                 |
[INFO] [stderr]              32 |                     self.insert(line, item);
[INFO] [stderr]                 |                          ^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::insert`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::insert`
[INFO] [stderr]            ...
[INFO] [stderr]            1306 |     fn insert(&mut self, line: i32, item: &str);
[INFO] [stderr]                 |        ------ required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:33:26
[INFO] [stderr]                 |
[INFO] [stderr]              33 |                     self.set_data(line, data);
[INFO] [stderr]                 |                          ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::set_data`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::set_data`
[INFO] [stderr]            ...
[INFO] [stderr]            1409 |     fn set_data<T: Clone + 'static>(&mut self, line: i32, data: T);
[INFO] [stderr]                 |        -------- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:37:45
[INFO] [stderr]                 |
[INFO] [stderr]              37 |                     if to > 0 && to <= self.size() + 1 && from > 0 && from <= self.size() + 1 {
[INFO] [stderr]                 |                                             ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:37:84
[INFO] [stderr]                 |
[INFO] [stderr]              37 |                     if to > 0 && to <= self.size() + 1 && from > 0 && from <= self.size() + 1 {
[INFO] [stderr]                 |                                                                                    ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:43:43
[INFO] [stderr]                 |
[INFO] [stderr]              43 |                     if a > 0 && a <= self.size() + 1 && b > 0 && b <= self.size() + 1 {
[INFO] [stderr]                 |                                           ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:43:76
[INFO] [stderr]                 |
[INFO] [stderr]              43 |                     if a > 0 && a <= self.size() + 1 && b > 0 && b <= self.size() + 1 {
[INFO] [stderr]                 |                                                                            ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:61:49
[INFO] [stderr]                 |
[INFO] [stderr]              61 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:69:49
[INFO] [stderr]                 |
[INFO] [stderr]              69 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:77:49
[INFO] [stderr]                 |
[INFO] [stderr]              77 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:87:49
[INFO] [stderr]                 |
[INFO] [stderr]              87 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:106:26
[INFO] [stderr]                 |
[INFO] [stderr]             106 |                     self.text(self.value())
[INFO] [stderr]                 |                          ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::text`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::text`
[INFO] [stderr]            ...
[INFO] [stderr]            1331 |     fn text(&self, line: i32) -> Option<String>;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:110:49
[INFO] [stderr]                 |
[INFO] [stderr]             110 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:147:49
[INFO] [stderr]                 |
[INFO] [stderr]             147 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:171:53
[INFO] [stderr]                 |
[INFO] [stderr]             171 |                         if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                     ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_image_ptr` found for struct `image::Image` in the current scope
[INFO] [stderr]                --> src/macros/browser.rs:177:55
[INFO] [stderr]                 |
[INFO] [stderr]             177 | ...                   $crate::image::Image::from_image_ptr(image_ptr as *mut fltk_sys::image::Fl_Image);
[INFO] [stderr]                 |                                             ^^^^^^^^^^^^^^ associated function or constant not found in `image::Image`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/image.rs:12:1
[INFO] [stderr]                 |
[INFO] [stderr]              12 | pub struct Image {
[INFO] [stderr]                 | ---------------- associated function or constant `from_image_ptr` not found for this struct
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::ImageExt` defines an item `from_image_ptr`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:1600:1
[INFO] [stderr]                 |
[INFO] [stderr]            1600 | pub unsafe trait ImageExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:188:53
[INFO] [stderr]                 |
[INFO] [stderr]             188 |                         if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                     ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:195:49
[INFO] [stderr]                 |
[INFO] [stderr]             195 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:201:49
[INFO] [stderr]                 |
[INFO] [stderr]             201 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:207:49
[INFO] [stderr]                 |
[INFO] [stderr]             207 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:262:49
[INFO] [stderr]                 |
[INFO] [stderr]             262 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:270:49
[INFO] [stderr]                 |
[INFO] [stderr]             270 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Scrollbar` in the current scope
[INFO] [stderr]               --> src/macros/browser.rs:317:54
[INFO] [stderr]                |
[INFO] [stderr]            317 |                         $crate::valuator::Scrollbar::from_widget_ptr(
[INFO] [stderr]                |                                                      ^^^^^^^^^^^^^^^ associated function or constant not found in `Scrollbar`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:222:1
[INFO] [stderr]                |
[INFO] [stderr]            222 | pub struct Scrollbar {
[INFO] [stderr]                | -------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:108:1
[INFO] [stderr]                |
[INFO] [stderr]            108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Scrollbar` in the current scope
[INFO] [stderr]               --> src/macros/browser.rs:327:54
[INFO] [stderr]                |
[INFO] [stderr]            327 |                         $crate::valuator::Scrollbar::from_widget_ptr(
[INFO] [stderr]                |                                                      ^^^^^^^^^^^^^^^ associated function or constant not found in `Scrollbar`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:222:1
[INFO] [stderr]                |
[INFO] [stderr]            222 | pub struct Scrollbar {
[INFO] [stderr]                | -------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:108:1
[INFO] [stderr]                |
[INFO] [stderr]            108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:338:49
[INFO] [stderr]                 |
[INFO] [stderr]             338 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:346:49
[INFO] [stderr]                 |
[INFO] [stderr]             346 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:360:49
[INFO] [stderr]                 |
[INFO] [stderr]             360 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:367:29
[INFO] [stderr]                 |
[INFO] [stderr]             367 |                     if self.value() > 0 {
[INFO] [stderr]                 |                             ^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::value`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::value`
[INFO] [stderr]            ...
[INFO] [stderr]            1407 |     fn value(&self) -> i32;
[INFO] [stderr]                 |        ----- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:368:42
[INFO] [stderr]                 |
[INFO] [stderr]             368 |                         for i in 1..self.size() + 1 {
[INFO] [stderr]                 |                                          ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `MultiBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:369:37
[INFO] [stderr]                 |
[INFO] [stderr]             369 | ...                   if self.selected(i) {
[INFO] [stderr]                 |                               ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:108:1
[INFO] [stderr]                 |
[INFO] [stderr]             108 | crate::macros::browser::impl_browser_ext!(MultiBrowser, Fl_Multi_Browser);
[INFO] [stderr]                 | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `MultiBrowser`
[INFO] [stderr]                --> src/browser.rs:100:1
[INFO] [stderr]                 |
[INFO] [stderr]             100 | pub struct MultiBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::selected`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::selected`
[INFO] [stderr]            ...
[INFO] [stderr]            1328 |     fn selected(&self, line: i32) -> bool;
[INFO] [stderr]                 |        -------- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `HoldBrowser` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `HoldBrowser`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ---------------------- associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]             119 | crate::macros::widget::impl_widget_default!(HoldBrowser);
[INFO] [stderr]                 | -------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:10:53
[INFO] [stderr]                 |
[INFO] [stderr]              10 |                         if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                     ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:22:26
[INFO] [stderr]                 |
[INFO] [stderr]              22 |                     self.add(item);
[INFO] [stderr]                 |                          ^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::add`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::add`
[INFO] [stderr]            ...
[INFO] [stderr]            1301 |     fn add(&mut self, item: &str);
[INFO] [stderr]                 |        --- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:23:26
[INFO] [stderr]                 |
[INFO] [stderr]              23 |                     self.set_data(self.size(), data);
[INFO] [stderr]                 |                          ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::set_data`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::set_data`
[INFO] [stderr]            ...
[INFO] [stderr]            1409 |     fn set_data<T: Clone + 'static>(&mut self, line: i32, data: T);
[INFO] [stderr]                 |        -------- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:32:26
[INFO] [stderr]                 |
[INFO] [stderr]              32 |                     self.insert(line, item);
[INFO] [stderr]                 |                          ^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::insert`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::insert`
[INFO] [stderr]            ...
[INFO] [stderr]            1306 |     fn insert(&mut self, line: i32, item: &str);
[INFO] [stderr]                 |        ------ required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:33:26
[INFO] [stderr]                 |
[INFO] [stderr]              33 |                     self.set_data(line, data);
[INFO] [stderr]                 |                          ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::set_data`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::set_data`
[INFO] [stderr]            ...
[INFO] [stderr]            1409 |     fn set_data<T: Clone + 'static>(&mut self, line: i32, data: T);
[INFO] [stderr]                 |        -------- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:37:45
[INFO] [stderr]                 |
[INFO] [stderr]              37 |                     if to > 0 && to <= self.size() + 1 && from > 0 && from <= self.size() + 1 {
[INFO] [stderr]                 |                                             ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:37:84
[INFO] [stderr]                 |
[INFO] [stderr]              37 |                     if to > 0 && to <= self.size() + 1 && from > 0 && from <= self.size() + 1 {
[INFO] [stderr]                 |                                                                                    ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:43:43
[INFO] [stderr]                 |
[INFO] [stderr]              43 |                     if a > 0 && a <= self.size() + 1 && b > 0 && b <= self.size() + 1 {
[INFO] [stderr]                 |                                           ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:43:76
[INFO] [stderr]                 |
[INFO] [stderr]              43 |                     if a > 0 && a <= self.size() + 1 && b > 0 && b <= self.size() + 1 {
[INFO] [stderr]                 |                                                                            ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:61:49
[INFO] [stderr]                 |
[INFO] [stderr]              61 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:69:49
[INFO] [stderr]                 |
[INFO] [stderr]              69 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:77:49
[INFO] [stderr]                 |
[INFO] [stderr]              77 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:87:49
[INFO] [stderr]                 |
[INFO] [stderr]              87 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:106:26
[INFO] [stderr]                 |
[INFO] [stderr]             106 |                     self.text(self.value())
[INFO] [stderr]                 |                          ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::text`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::text`
[INFO] [stderr]            ...
[INFO] [stderr]            1331 |     fn text(&self, line: i32) -> Option<String>;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:110:49
[INFO] [stderr]                 |
[INFO] [stderr]             110 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:147:49
[INFO] [stderr]                 |
[INFO] [stderr]             147 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:171:53
[INFO] [stderr]                 |
[INFO] [stderr]             171 |                         if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                     ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_image_ptr` found for struct `image::Image` in the current scope
[INFO] [stderr]                --> src/macros/browser.rs:177:55
[INFO] [stderr]                 |
[INFO] [stderr]             177 | ...                   $crate::image::Image::from_image_ptr(image_ptr as *mut fltk_sys::image::Fl_Image);
[INFO] [stderr]                 |                                             ^^^^^^^^^^^^^^ associated function or constant not found in `image::Image`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/image.rs:12:1
[INFO] [stderr]                 |
[INFO] [stderr]              12 | pub struct Image {
[INFO] [stderr]                 | ---------------- associated function or constant `from_image_ptr` not found for this struct
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::ImageExt` defines an item `from_image_ptr`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:1600:1
[INFO] [stderr]                 |
[INFO] [stderr]            1600 | pub unsafe trait ImageExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:188:53
[INFO] [stderr]                 |
[INFO] [stderr]             188 |                         if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                     ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:195:49
[INFO] [stderr]                 |
[INFO] [stderr]             195 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:201:49
[INFO] [stderr]                 |
[INFO] [stderr]             201 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:207:49
[INFO] [stderr]                 |
[INFO] [stderr]             207 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:262:49
[INFO] [stderr]                 |
[INFO] [stderr]             262 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:270:49
[INFO] [stderr]                 |
[INFO] [stderr]             270 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Scrollbar` in the current scope
[INFO] [stderr]               --> src/macros/browser.rs:317:54
[INFO] [stderr]                |
[INFO] [stderr]            317 |                         $crate::valuator::Scrollbar::from_widget_ptr(
[INFO] [stderr]                |                                                      ^^^^^^^^^^^^^^^ associated function or constant not found in `Scrollbar`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:222:1
[INFO] [stderr]                |
[INFO] [stderr]            222 | pub struct Scrollbar {
[INFO] [stderr]                | -------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:120:1
[INFO] [stderr]                |
[INFO] [stderr]            120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Scrollbar` in the current scope
[INFO] [stderr]               --> src/macros/browser.rs:327:54
[INFO] [stderr]                |
[INFO] [stderr]            327 |                         $crate::valuator::Scrollbar::from_widget_ptr(
[INFO] [stderr]                |                                                      ^^^^^^^^^^^^^^^ associated function or constant not found in `Scrollbar`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:222:1
[INFO] [stderr]                |
[INFO] [stderr]            222 | pub struct Scrollbar {
[INFO] [stderr]                | -------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:120:1
[INFO] [stderr]                |
[INFO] [stderr]            120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:338:49
[INFO] [stderr]                 |
[INFO] [stderr]             338 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:346:49
[INFO] [stderr]                 |
[INFO] [stderr]             346 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:360:49
[INFO] [stderr]                 |
[INFO] [stderr]             360 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:367:29
[INFO] [stderr]                 |
[INFO] [stderr]             367 |                     if self.value() > 0 {
[INFO] [stderr]                 |                             ^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::value`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::value`
[INFO] [stderr]            ...
[INFO] [stderr]            1407 |     fn value(&self) -> i32;
[INFO] [stderr]                 |        ----- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:368:42
[INFO] [stderr]                 |
[INFO] [stderr]             368 |                         for i in 1..self.size() + 1 {
[INFO] [stderr]                 |                                          ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `HoldBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:369:37
[INFO] [stderr]                 |
[INFO] [stderr]             369 | ...                   if self.selected(i) {
[INFO] [stderr]                 |                               ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:120:1
[INFO] [stderr]                 |
[INFO] [stderr]             120 | crate::macros::browser::impl_browser_ext!(HoldBrowser, Fl_Hold_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `HoldBrowser`
[INFO] [stderr]                --> src/browser.rs:112:1
[INFO] [stderr]                 |
[INFO] [stderr]             112 | pub struct HoldBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::selected`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::selected`
[INFO] [stderr]            ...
[INFO] [stderr]            1328 |     fn selected(&self, line: i32) -> bool;
[INFO] [stderr]                 |        -------- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `FileBrowser` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `FileBrowser`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ---------------------- associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]             131 | crate::macros::widget::impl_widget_default!(FileBrowser);
[INFO] [stderr]                 | -------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:10:53
[INFO] [stderr]                 |
[INFO] [stderr]              10 |                         if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                     ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:22:26
[INFO] [stderr]                 |
[INFO] [stderr]              22 |                     self.add(item);
[INFO] [stderr]                 |                          ^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::add`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::add`
[INFO] [stderr]            ...
[INFO] [stderr]            1301 |     fn add(&mut self, item: &str);
[INFO] [stderr]                 |        --- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:23:26
[INFO] [stderr]                 |
[INFO] [stderr]              23 |                     self.set_data(self.size(), data);
[INFO] [stderr]                 |                          ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::set_data`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::set_data`
[INFO] [stderr]            ...
[INFO] [stderr]            1409 |     fn set_data<T: Clone + 'static>(&mut self, line: i32, data: T);
[INFO] [stderr]                 |        -------- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:32:26
[INFO] [stderr]                 |
[INFO] [stderr]              32 |                     self.insert(line, item);
[INFO] [stderr]                 |                          ^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::insert`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::insert`
[INFO] [stderr]            ...
[INFO] [stderr]            1306 |     fn insert(&mut self, line: i32, item: &str);
[INFO] [stderr]                 |        ------ required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:33:26
[INFO] [stderr]                 |
[INFO] [stderr]              33 |                     self.set_data(line, data);
[INFO] [stderr]                 |                          ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::set_data`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::set_data`
[INFO] [stderr]            ...
[INFO] [stderr]            1409 |     fn set_data<T: Clone + 'static>(&mut self, line: i32, data: T);
[INFO] [stderr]                 |        -------- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:37:45
[INFO] [stderr]                 |
[INFO] [stderr]              37 |                     if to > 0 && to <= self.size() + 1 && from > 0 && from <= self.size() + 1 {
[INFO] [stderr]                 |                                             ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:37:84
[INFO] [stderr]                 |
[INFO] [stderr]              37 |                     if to > 0 && to <= self.size() + 1 && from > 0 && from <= self.size() + 1 {
[INFO] [stderr]                 |                                                                                    ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:43:43
[INFO] [stderr]                 |
[INFO] [stderr]              43 |                     if a > 0 && a <= self.size() + 1 && b > 0 && b <= self.size() + 1 {
[INFO] [stderr]                 |                                           ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:43:76
[INFO] [stderr]                 |
[INFO] [stderr]              43 |                     if a > 0 && a <= self.size() + 1 && b > 0 && b <= self.size() + 1 {
[INFO] [stderr]                 |                                                                            ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:61:49
[INFO] [stderr]                 |
[INFO] [stderr]              61 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:69:49
[INFO] [stderr]                 |
[INFO] [stderr]              69 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:77:49
[INFO] [stderr]                 |
[INFO] [stderr]              77 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:87:49
[INFO] [stderr]                 |
[INFO] [stderr]              87 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:106:26
[INFO] [stderr]                 |
[INFO] [stderr]             106 |                     self.text(self.value())
[INFO] [stderr]                 |                          ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::text`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::text`
[INFO] [stderr]            ...
[INFO] [stderr]            1331 |     fn text(&self, line: i32) -> Option<String>;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:110:49
[INFO] [stderr]                 |
[INFO] [stderr]             110 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:147:49
[INFO] [stderr]                 |
[INFO] [stderr]             147 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:171:53
[INFO] [stderr]                 |
[INFO] [stderr]             171 |                         if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                     ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_image_ptr` found for struct `image::Image` in the current scope
[INFO] [stderr]                --> src/macros/browser.rs:177:55
[INFO] [stderr]                 |
[INFO] [stderr]             177 | ...                   $crate::image::Image::from_image_ptr(image_ptr as *mut fltk_sys::image::Fl_Image);
[INFO] [stderr]                 |                                             ^^^^^^^^^^^^^^ associated function or constant not found in `image::Image`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/image.rs:12:1
[INFO] [stderr]                 |
[INFO] [stderr]              12 | pub struct Image {
[INFO] [stderr]                 | ---------------- associated function or constant `from_image_ptr` not found for this struct
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::ImageExt` defines an item `from_image_ptr`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:1600:1
[INFO] [stderr]                 |
[INFO] [stderr]            1600 | pub unsafe trait ImageExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:188:53
[INFO] [stderr]                 |
[INFO] [stderr]             188 |                         if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                     ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:195:49
[INFO] [stderr]                 |
[INFO] [stderr]             195 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:201:49
[INFO] [stderr]                 |
[INFO] [stderr]             201 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:207:49
[INFO] [stderr]                 |
[INFO] [stderr]             207 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:262:49
[INFO] [stderr]                 |
[INFO] [stderr]             262 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:270:49
[INFO] [stderr]                 |
[INFO] [stderr]             270 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Scrollbar` in the current scope
[INFO] [stderr]               --> src/macros/browser.rs:317:54
[INFO] [stderr]                |
[INFO] [stderr]            317 |                         $crate::valuator::Scrollbar::from_widget_ptr(
[INFO] [stderr]                |                                                      ^^^^^^^^^^^^^^^ associated function or constant not found in `Scrollbar`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:222:1
[INFO] [stderr]                |
[INFO] [stderr]            222 | pub struct Scrollbar {
[INFO] [stderr]                | -------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:132:1
[INFO] [stderr]                |
[INFO] [stderr]            132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Scrollbar` in the current scope
[INFO] [stderr]               --> src/macros/browser.rs:327:54
[INFO] [stderr]                |
[INFO] [stderr]            327 |                         $crate::valuator::Scrollbar::from_widget_ptr(
[INFO] [stderr]                |                                                      ^^^^^^^^^^^^^^^ associated function or constant not found in `Scrollbar`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:222:1
[INFO] [stderr]                |
[INFO] [stderr]            222 | pub struct Scrollbar {
[INFO] [stderr]                | -------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/browser.rs:132:1
[INFO] [stderr]                |
[INFO] [stderr]            132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:338:49
[INFO] [stderr]                 |
[INFO] [stderr]             338 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:346:49
[INFO] [stderr]                 |
[INFO] [stderr]             346 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:360:49
[INFO] [stderr]                 |
[INFO] [stderr]             360 |                     if line > 0 && line <= self.size() + 1 {
[INFO] [stderr]                 |                                                 ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:367:29
[INFO] [stderr]                 |
[INFO] [stderr]             367 |                     if self.value() > 0 {
[INFO] [stderr]                 |                             ^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::value`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::value`
[INFO] [stderr]            ...
[INFO] [stderr]            1407 |     fn value(&self) -> i32;
[INFO] [stderr]                 |        ----- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:368:42
[INFO] [stderr]                 |
[INFO] [stderr]             368 |                         for i in 1..self.size() + 1 {
[INFO] [stderr]                 |                                          ^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::size`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::size`
[INFO] [stderr]            ...
[INFO] [stderr]            1319 |     fn size(&self) -> i32;
[INFO] [stderr]                 |        ---- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `FileBrowser: prelude::WidgetExt` is not satisfied
[INFO] [stderr]                --> src/macros/browser.rs:369:37
[INFO] [stderr]                 |
[INFO] [stderr]             369 | ...                   if self.selected(i) {
[INFO] [stderr]                 |                               ^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:132:1
[INFO] [stderr]                 |
[INFO] [stderr]             132 | crate::macros::browser::impl_browser_ext!(FileBrowser, Fl_File_Browser);
[INFO] [stderr]                 | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]            help: the trait `prelude::WidgetExt` is not implemented for `FileBrowser`
[INFO] [stderr]                --> src/browser.rs:124:1
[INFO] [stderr]                 |
[INFO] [stderr]             124 | pub struct FileBrowser {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            help: this trait has no implementations, consider adding one
[INFO] [stderr]                --> src/prelude.rs:133:1
[INFO] [stderr]                 |
[INFO] [stderr]             133 | pub unsafe trait WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required by a bound in `prelude::BrowserExt::selected`
[INFO] [stderr]                --> src/prelude.rs:1296:30
[INFO] [stderr]                 |
[INFO] [stderr]            1296 | pub unsafe trait BrowserExt: WidgetExt {
[INFO] [stderr]                 |                              ^^^^^^^^^ required by this bound in `BrowserExt::selected`
[INFO] [stderr]            ...
[INFO] [stderr]            1328 |     fn selected(&self, line: i32) -> bool;
[INFO] [stderr]                 |        -------- required by a bound in this associated function
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::browser::impl_browser_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `CheckBrowser` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `CheckBrowser`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/browser.rs:202:1
[INFO] [stderr]                 |
[INFO] [stderr]             202 | pub struct CheckBrowser {
[INFO] [stderr]                 | ----------------------- associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]             209 | crate::macros::widget::impl_widget_default!(CheckBrowser);
[INFO] [stderr]                 | --------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Scrollbar` in the current scope
[INFO] [stderr]               --> src/browser.rs:372:41
[INFO] [stderr]                |
[INFO] [stderr]            372 |             crate::valuator::Scrollbar::from_widget_ptr(ptr as *mut fltk_sys::widget::Fl_Widget)
[INFO] [stderr]                |                                         ^^^^^^^^^^^^^^^ associated function or constant not found in `Scrollbar`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:222:1
[INFO] [stderr]                |
[INFO] [stderr]            222 | pub struct Scrollbar {
[INFO] [stderr]                | -------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `from_widget_ptr` found for struct `Scrollbar` in the current scope
[INFO] [stderr]               --> src/browser.rs:381:41
[INFO] [stderr]                |
[INFO] [stderr]            381 |             crate::valuator::Scrollbar::from_widget_ptr(ptr as *mut fltk_sys::widget::Fl_Widget)
[INFO] [stderr]                |                                         ^^^^^^^^^^^^^^^ associated function or constant not found in `Scrollbar`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/valuator.rs:222:1
[INFO] [stderr]                |
[INFO] [stderr]            222 | pub struct Scrollbar {
[INFO] [stderr]                | -------------------- associated function or constant `from_widget_ptr` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `from_widget_ptr`, perhaps you need to implement it
[INFO] [stderr]               --> src/prelude.rs:453:1
[INFO] [stderr]                |
[INFO] [stderr]            453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `Button` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `Button`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/button.rs:8:1
[INFO] [stderr]                 |
[INFO] [stderr]               8 | pub struct Button {
[INFO] [stderr]                 | ----------------- associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]              15 | crate::macros::widget::impl_widget_default!(Button);
[INFO] [stderr]                 | --------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `RadioButton` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `RadioButton`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/button.rs:49:1
[INFO] [stderr]                 |
[INFO] [stderr]              49 | pub struct RadioButton {
[INFO] [stderr]                 | ---------------------- associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]              56 | crate::macros::widget::impl_widget_default!(RadioButton);
[INFO] [stderr]                 | -------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `RadioRoundButton` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `RadioRoundButton`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/button.rs:74:1
[INFO] [stderr]                 |
[INFO] [stderr]              74 | pub struct RadioRoundButton {
[INFO] [stderr]                 | --------------------------- associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]              81 | crate::macros::widget::impl_widget_default!(RadioRoundButton);
[INFO] [stderr]                 | ------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `RadioLightButton` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `RadioLightButton`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/button.rs:99:1
[INFO] [stderr]                 |
[INFO] [stderr]              99 | pub struct RadioLightButton {
[INFO] [stderr]                 | --------------------------- associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]             106 | crate::macros::widget::impl_widget_default!(RadioLightButton);
[INFO] [stderr]                 | ------------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `RoundButton` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `RoundButton`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/button.rs:123:1
[INFO] [stderr]                 |
[INFO] [stderr]             123 | pub struct RoundButton {
[INFO] [stderr]                 | ---------------------- associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]             130 | crate::macros::widget::impl_widget_default!(RoundButton);
[INFO] [stderr]                 | -------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `CheckButton` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `CheckButton`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/button.rs:147:1
[INFO] [stderr]                 |
[INFO] [stderr]             147 | pub struct CheckButton {
[INFO] [stderr]                 | ---------------------- associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]             154 | crate::macros::widget::impl_widget_default!(CheckButton);
[INFO] [stderr]                 | -------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `ToggleButton` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `ToggleButton`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/button.rs:173:1
[INFO] [stderr]                 |
[INFO] [stderr]             173 | pub struct ToggleButton {
[INFO] [stderr]                 | ----------------------- associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]             180 | crate::macros::widget::impl_widget_default!(ToggleButton);
[INFO] [stderr]                 | --------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `LightButton` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `LightButton`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/button.rs:197:1
[INFO] [stderr]                 |
[INFO] [stderr]             197 | pub struct LightButton {
[INFO] [stderr]                 | ---------------------- associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]             204 | crate::macros::widget::impl_widget_default!(LightButton);
[INFO] [stderr]                 | -------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `RepeatButton` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `RepeatButton`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/button.rs:221:1
[INFO] [stderr]                 |
[INFO] [stderr]             221 | pub struct RepeatButton {
[INFO] [stderr]                 | ----------------------- associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]             228 | crate::macros::widget::impl_widget_default!(RepeatButton);
[INFO] [stderr]                 | --------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `ReturnButton` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `ReturnButton`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/button.rs:233:1
[INFO] [stderr]                 |
[INFO] [stderr]             233 | pub struct ReturnButton {
[INFO] [stderr]                 | ----------------------- associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]             240 | crate::macros::widget::impl_widget_default!(ReturnButton);
[INFO] [stderr]                 | --------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no associated function or constant named `new` found for struct `ShortcutButton` in the current scope
[INFO] [stderr]                --> src/macros/widget.rs:1058:23
[INFO] [stderr]                 |
[INFO] [stderr]            1058 |                 Self::new(0, 0, 0, 0, None)
[INFO] [stderr]                 |                       ^^^ associated function or constant not found in `ShortcutButton`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/button.rs:245:1
[INFO] [stderr]                 |
[INFO] [stderr]             245 | pub struct ShortcutButton {
[INFO] [stderr]                 | ------------------------- associated function or constant `new` not found for this struct
[INFO] [stderr]            ...
[INFO] [stderr]             252 | crate::macros::widget::impl_widget_default!(ShortcutButton);
[INFO] [stderr]                 | ----------------------------------------------------------- in this macro invocation
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::WidgetBase` defines an item `new`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:453:1
[INFO] [stderr]                 |
[INFO] [stderr]             453 | pub unsafe trait WidgetBase: WidgetExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: this error originates in the macro `crate::macros::widget::impl_widget_default` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no method named `scale` found for struct `RgbImage` in the current scope
[INFO] [stderr]                --> src/draw/routines.rs:872:13
[INFO] [stderr]                 |
[INFO] [stderr]             872 |         img.scale(w, h, false, true);
[INFO] [stderr]                 |             ^^^^^ method not found in `RgbImage`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/image.rs:841:1
[INFO] [stderr]                 |
[INFO] [stderr]             841 | pub struct RgbImage {
[INFO] [stderr]                 | ------------------- method `scale` not found for this struct
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::ImageExt` defines an item `scale`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:1600:1
[INFO] [stderr]                 |
[INFO] [stderr]            1600 | pub unsafe trait ImageExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no method named `draw` found for struct `RgbImage` in the current scope
[INFO] [stderr]               --> src/draw/routines.rs:873:13
[INFO] [stderr]                |
[INFO] [stderr]            873 |         img.draw(x, y, w, h);
[INFO] [stderr]                |             ^^^^ method not found in `RgbImage`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/image.rs:841:1
[INFO] [stderr]                |
[INFO] [stderr]            841 | pub struct RgbImage {
[INFO] [stderr]                | ------------------- method `draw` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]                = note: the following traits define an item `draw`, perhaps you need to implement one of them:
[INFO] [stderr]                        candidate #1: `prelude::ImageExt`
[INFO] [stderr]                        candidate #2: `prelude::WidgetBase`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no method named `scale` found for struct `RgbImage` in the current scope
[INFO] [stderr]                --> src/draw/routines.rs:897:17
[INFO] [stderr]                 |
[INFO] [stderr]             897 |             img.scale(w, h, false, true);
[INFO] [stderr]                 |                 ^^^^^ method not found in `RgbImage`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/image.rs:841:1
[INFO] [stderr]                 |
[INFO] [stderr]             841 | pub struct RgbImage {
[INFO] [stderr]                 | ------------------- method `scale` not found for this struct
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::ImageExt` defines an item `scale`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:1600:1
[INFO] [stderr]                 |
[INFO] [stderr]            1600 | pub unsafe trait ImageExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no method named `draw` found for struct `RgbImage` in the current scope
[INFO] [stderr]               --> src/draw/routines.rs:898:17
[INFO] [stderr]                |
[INFO] [stderr]            898 |             img.draw(x, y, w, h);
[INFO] [stderr]                |                 ^^^^ method not found in `RgbImage`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/image.rs:841:1
[INFO] [stderr]                |
[INFO] [stderr]            841 | pub struct RgbImage {
[INFO] [stderr]                | ------------------- method `draw` not found for this struct
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]                = note: the following traits define an item `draw`, perhaps you need to implement one of them:
[INFO] [stderr]                        candidate #1: `prelude::ImageExt`
[INFO] [stderr]                        candidate #2: `prelude::WidgetBase`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no method named `scale` found for struct `RgbImage` in the current scope
[INFO] [stderr]                --> src/draw/routines.rs:915:13
[INFO] [stderr]                 |
[INFO] [stderr]             915 |         img.scale(w, h, false, true);
[INFO] [stderr]                 |             ^^^^^ method not found in `RgbImage`
[INFO] [stderr]                 |
[INFO] [stderr]                ::: src/image.rs:841:1
[INFO] [stderr]                 |
[INFO] [stderr]             841 | pub struct RgbImage {
[INFO] [stderr]                 | ------------------- method `scale` not found for this struct
[INFO] [stderr]                 |
[INFO] [stderr]                 = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]            note: `prelude::ImageExt` defines an item `scale`, perhaps you need to implement it
[INFO] [stderr]                --> src/prelude.rs:1600:1
[INFO] [stderr]                 |
[INFO] [stderr]            1600 | pub unsafe trait ImageExt {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no method named `draw` found for struct `RgbImage` in the current scope
[INFO] [stderr]               --> src/draw/routines.rs:916:13
[INFO] [stderr]                |
[INFO] [stderr]            916 |         img.draw(x, y, w, h);
[INFO] [stderr]                |             ^^^^ method not found in `RgbImage`
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/image.rs:841:1
[INFO] [stderr]                |
[INFO] [stderr]            841 | pub struct RgbImage {
[WARN] too many lines in the log, truncating it
